Vous êtes sur la page 1sur 32

Discover Quality

Assurance

Radu Ichim
The Purpose of QA
Concepts and Terminology
Quality Assurance vs Quality Control
Black box / White box / Gray box testing
Functional and Non-Functional Testing
Test Requirements
Scenario testing
Test cases and Test scripts
Defects
Testing concepts and test design methodologies
Best Practices
Understanding the Test process: Planning, Design, and Execution
Testing without requirements or with poor requirements
Getting the most out of your Regression Testing
Negative Testing
Test Automation
Q&A
Interactive Examples
The Purpose of QA
Meets standards
Satisfies requirements
Delivered in time
Within budget
Verification and Validation

Software testing is part of a broader group of activities called


verification and validation that are involved in software quality
assurance

1.Verification (Are the algorithms coded correctly?)


The set of activities that ensure that software correctly implements
a specific function or algorithm
2. Validation (Does it meet user requirements?)
The set of activities that ensure that the software that has been
built is traceable to customer requirements
Strategy for testing

System Testing
Validation Testing
Integration Testing
Unit Testing

Code
Design

Requirements
System Engineering
Concepts and Terminology
Quality Assurance
vs
Quality Control
Defects
Phase in Which Found Cost Ratio

Requirements 1

Design 3-6

Coding 10

Unit/Integration Testing 15-40

System/Acceptance Testing 30-70


(IBM, GTE, et. al)
Production 40-100
Test Requirements
What exactly is a Test Requirement?
Why identify Test Requirements?
Where does a Test Requirement come
from?
Functional and Non-Functional Testing
Functional testing

Positive testing Negative testing


Non-functional testing
Black box / White box / Gray box testing
Black box testing

Viewpoint of the user

Ease of use

Code access not required

Early test case design

Hard to cover all posibilities

Hard to maintain GUI test scripts

Redundant test cases


White box testing

Introspection

Helps code optimization

Better coverage

High complexity

Fragile test scripts


Gray box testing

Combined benefits

Better coverage of the application

Partial code coverage

Dificult to identify defects in distributed systems


Scenario testing

Test based on a story


The story is motivating
The story is credible
Complex use of the program
Test results are easy to evaluate
Test cases and Test scripts
Best Practices
Understanding the Test process: Planning,
Design, and Execution

Functional specifications
Reviews and inspection
Formal entry and exit criteria
Functional test variations
Regression testing
Multi-platform testing
Internal betas
Automated test execution
Nightly builds
Negative Testing

Break the software in ways that a typical user might

Entering erroneous data


Questions
and
Answers
Exercises:
1. Display defects
Find more than 20 defects (layout inconsistencies,
spelling errors, and the like)
2. There is a simple program with the following items:
Input Box A
Input Box B
Add button
Result Text Box [=A+B]
The text boxes can only contain numbers.

Identify all the test cases for the program. [Example: press the Add
button without entering anything in Input Box A and B]
3. Hold a pen. Identify the types of testing you would
perform on it to make sure that it is of the highest
quality.
THANK YOU

Vous aimerez peut-être aussi