Bugs
Faults
Failures
Devs
Defect Prevention
Fault Tolerance
Defect Removal
REMEMBER OUR TARGET AS SOFTWARE ENGINEERS: REDUCE AND MINIMIZE IMPACT OF DEFECTS
Bugs
Faults
Failures
Devs
INPUT
OUTPUT
Look inside your code for the origin of the failures and when detected, remove it
Is the output different to the expected one? FAILURE
INPUT
OUTPUT
1 MINUTE PAGE
UNIT TESTING
COMPONENT TESTING
INTEGRATION TESTING
SYSTEM TESTING
COVERAGE BASED
USAGE BASED
SMOKE TESTING
CERTIFICATION TESTING
REGRESSION TESTING
FUNCTIONAL TESTING
STRUCTURAL TESTING
AUTOMATED
MANUAL
WORK IN PAIRS:
What do you think is a test case?
Can you provide an example?
A test-case is the description of the procedure to test a specific functionality of the system, explaining clearly what the expected outcome of the execution
In software, a test-case is usually:
Pre-conditions | Input 1 | Input 2 | Input 3 | Expected Result |
---|---|---|---|---|
2 | 2 | 2 | 6 | |
4 | 3 | 3 | 10 |
TEST CASES EXAMPLE
Test Cases for a function that calculates the addition of 3 numbers
WORK IN PAIRS:
What do you think is a test execution?
Which information should we register for a test-execution?
TEST EXECUTION INFO
PLANNING
EXECUTION
FOLLOW-UP
WHICH STEPS YOU THINK SHOULD BE FOLLOWED TO FIX A DEFECT?
In the book "The Art of Software Testing", Glenford Myers poses the following functional testing problem: Develop a good set of test cases for a program that accepts three numbers, a, b, c, interprets those numbers as the lengths of the sides of a triangle, and outputs the type of the triangle. Myers reports that in his experience most software developers will not respond with a good test set.