Vous êtes sur la page 1sur 25

Software Testing

Agenda
Introduction
Why do we test?
How do we test?
Is it worth it?
What qualities are best for testers?
What else would you like to know?
Some links
Introduction
The Southern California Quality Assurance
Association - Inland Empire is an organization
dedicated to educating the IT industry in Software
Quality.

My name is Cheryl Leoni. I currently manage a
team of 25 software testers. Ive been in IT for 24
years working for small companies all the way up
to major corporations. Companies I have worked
for include Citigroup, Speech Systems, Digital
Insight, Investment Technology Group, and
Automated Data Processing. I am certified by the
Quality Assurance Institute as a Software Test
Engineer.
Why Do We Test?
Developers are unable to build defect-free
Software (Quality Assurance Institute,
2006)
People tend to be blind to their own
mistakes
Software defects can cost a company a lot
of money
Quality is everyones job
What is a defect?
A defect is an undesirable state (Quality
Assurance Institute, 2006).
As simple as a spelling error
As serious as a life support system
crashing
Defects can often be traced back to
requirements
How Do We Test?
Testing starts at the very beginning of the
software development life cycle.

Are you familiar with the phases of a
software development life cycle?

Requirements - Determine verification approach
- Determine adequacy of design
- Generate functional test data
- Determine consistency of design with
requirements

Design - Determine adequacy of design
- Generate structural and functional test data
Determine consistency with design

Program
(build/construction)
- Determine adequacy of implementation
Generate structural and functional test
data for programs

Test Test application system

Installation Place tested system into production

Maintenance Modify and retest

Requirements Phase
A requirement tells us what a system is
supposed to do
As Requirements are being developed they
should be tested. (Static Testing)
Complete Consistent
Accurate Complete
Unambiguous Achievable
Relevant Testable
Design Phase
Test Plan
Test Cases/Test Procedures/Test
Scenarios
Test Data Design
Defect reports can be written against the
requirements

Test Case Exercise
For any one of the following
requirements below, write a test case.
1. The ATM shall require the customer to
enter a valid user name and password.
2. The ATM shall allow the customer to
withdraw up to $300 in cash in
increments of $20.
3. The ATM shall accept deposits from
customers.
Coding Phase
Test Environment Setup
Unit & Component Integration Testing
Defect reports can be written against the
design
System Test
Development team hands over code to the
Test Team
Critical path shifts to test team
Executing test cases against delivered
code (Dynamic Testing)
Defect reports can be written against the
code

Risk
Risk Analysis is critical to all testing
Focus tests on vulnerable areas
A few simple things that can increase risk:
Code Complexity
Design Complexity
Scale
New Technology
Experience with colleagues
Test Techniques
Requirements Manual Support
Error Handling Performance
Regression Load & Stress
Usability Security
Control Compliance
Parallel Operations
External Recovery
Intersystem
Boundary Value Analysis
Description
Is the form of equivalence class that focuses on boundaries of
the input and output equivalence classes.

Steps
Identify the equivalence classes.
Identify boundary classes for each class
Identify value outside the boundary for each equivalence class

Example
Two income tax ranges are $100 to $50,000 and $50,001 to
$99,000.
Output Forcing
Description
Is the form of equivalence class that focuses on output
equivalence classes.

Steps
Identify the output equivalence classes.
Select one representative value for each output equivalence
class

Example
Testing positive and negative outputs of tax calculation
Defect Reporting
Now that you have found a defect:
How do you know its a defect?
Who fixes it?
How do you explain the problem?
Automated Testing
Coding for testing
Adding a development cycle within a
development cycle
Several tools: Quick Test Pro, Winrunner,
Load Runner, Rational Functional Tester,
Rational Performance Test, J Unit

Is It Worth It?
Studies show that the cost of quality in IT is
approximately 50% of the total cost of building a
product. Of the 50% COQ, 40% is failure, 7% is
appraisal, and 3% is prevention. Other studies
have shown that $1 spent on appraisal costs will
reduce failure costs threefold; and each dollar
spent on prevention costs will reduce failure
costs tenfold (Quality Assurance Institute,
2007).
Under testing is expensive
Over testing is expensive
Optimum Test
Defects Found Late Are Expensive
What Qualities are Best for
Testers?
Confident
Diplomatic
Persuasive
Creative and Mischievous
Analytical and Detail Oriented
Strategic Planner
Super Hero
What Else Would You
Like to Know?
Links
SCQAA-IE
http://www.scqaa-ie.org/
Quality Assurance Institute
http://www.qaiworldwide.org/
Software Certifications
http://www.softwarecertifications.org/
Sticky Minds
http://www.stickyminds.com/
International Institute for Software Testing
http://www.iist.org/

Vous aimerez peut-être aussi