Testing is part of quality assurance Software Testing Chapter 4: Test Design Techniques 同海大学 TONGJI UNIVERSITY
Software Testing Testing is part of quality assurance. Chapter 4: Test Design Techniques
Outline .The Test Development Process Categories of Test Design Techniques .Specification-based or Black-box Techniques .Structure-based or White-box Techniques Experience-based Techniques .Choosing Test Techniques 同濟大学 TONGJI UNIVERSITY SoftwareTesting 16.12.2023
Outline •The Test Development Process •Categories of Test Design Techniques •Specification-based or Black-box Techniques •Structure-based or White-box Techniques •Experience-based Techniques •Choosing Test Techniques Software Testing 16.12.2023 2
The Test Development Process Learning Target >Differentiate between a test design specification,test case specification and test procedure specification (K2) >Compare the terms test condition,test case and test procedure(K2) >Evaluate the quality of test cases(K2) >Translate test cases into a well-structured test procedure specification (K3) GOAL 同濟大学 TONGJI UNIVERSITY SoftwareTesting 16.12.2023 3
The Test Development Process ➢ Differentiate between a test design specification, test case specification and test procedure specification (K2) ➢ Compare the terms test condition, test case and test procedure (K2) ➢ Evaluate the quality of test cases (K2) ➢ Translate test cases into a well-structured test procedure specification (K3) Learning Target Software Testing 16.12.2023 3
The Test Development Process Testing life cycle Test condition Test case Test case Test case Test case identification design implementation execution management 同濟大学 TONGJI UNIVERSITY SoftwareTesting 16.12.2023
The Test Development Process Testing life cycle Test condition identification Test case design Test case implementation Test case execution Test case management Software Testing 16.12.2023 4
The Test Development Process Testing life cycle Test condition identification Recognition test items and events,through different ways to describe them,like:simple sentences or control flow graph; >Test case design Determine how to test the test condition which has been identified; Test case implementation including preparation of test scripts,test input,test data and the expected results 同濟大学 TONGJI UNIVERSITY SoftwareTesting 16.12.2023 5
The Test Development Process Testing life cycle ➢ Test condition identification : Recognition test items and events, through different ways to describe them, like : simple sentences or control flow graph; ➢ Test case design : Determine how to test the test condition which has been identified; ➢ Test case implementation : including preparation of test scripts, test input, test data and the expected results Software Testing 16.12.2023 5
The Test Development Process Testing life cycle >Test case execution To test the system by running test cases.If the output of the test results and expected results are the same,then considering the test case is ok; >Test case management Includes test case organization,test case track and test case maintenance. 同濟大学 TONGJI UNIVERSITY SoftwareTesting 16.12.2023 6
The Test Development Process Testing life cycle ➢ Test case execution : To test the system by running test cases. If the output of the test results and expected results are the same, then considering the test case is ok; ➢ Test case management : Includes test case organization, test case track and test case maintenance. Software Testing 16.12.2023 6
The Test Development Process Testing life cycle--Test condition identification A program reads 3 integers,the 3 values as 3 sides of a triangle length values.This program prints out thethe triangle is inequilateral triangle,equilateral triangle or equicrural triangle Test condition identification:whats the specific shapes of triangle printed by the program? 同濟大学 TONGJI UNIVERSITY Software Testing 16.12.2023 7
The Test Development Process A program reads 3 integers, the 3 values as 3 sides of a triangle length values. This program prints out the the triangle is inequilateral triangle , equilateral triangle or equicrural triangle. Testing life cycle--Test condition identification Test condition identification: whats the specific shapes of triangle printed by the program? Software Testing 16.12.2023 7
The Test Development Process Testing life cycle--Test case design Test Design Techniques Block-box ·equivalence partitionging White-box ·boundary value ·statement coverage ·causal diagrams and ·branch coverage decision tables ·condition coverage state transition testing ·path coverage ·cause and effect diagram 同濟大学 TONGJI UNIVERSITY SoftwareTesting 16.12.2023 8
The Test Development Process Testing life cycle--Test case design Block-box • equivalence partitionging • boundary value • causal diagrams and decision tables • state transition testing • cause and effect diagram Test Design Techniques White-box • statement coverage • branch coverage • condition coverage • path coverage Software Testing 16.12.2023 8
The Test Development Process Testing life cycle--Test case implementation and so on ● test results expected Test Results Expected test data Test Data test input Test Input test preconditions Test Preconditions 同濟大学 TONGJI UNIVERSITY Software Testing 16.12.2023 9
The Test Development Process Testing life cycle--Test case implementation Test Results Expected Test Data Test Input Test Preconditions and so on Software Testing 16.12.2023 9 test preconditions test input test data test results expected
The Test Development Process Testing life cycle--Test case execution Test environment to build Input test data Check the output Compare the result Submit the bug report 同濟大学 TONGJI UNIVERSITY SoftwareTesting 16.12.2023 10
The Test Development Process Testing life cycle--Test case execution Software Testing 16.12.2023 10