3 § Validation. It is about requirements. Are we building the right product? Does this software do what it needs to do? § Verification. It is about design. Are we building the product right? Does this meet its requirements? § Testing. Examination of the behavior of a program by executing it on sample data sets. Definition
6 Testing White Box (Verification) Unit Testing Integration Testing Black Box (Validation) System Testing Scenario-based testing Model-based testing Testing
7 § Unit testing is the testing of an individual unit or group of related units. § It test that a unit is producing expected output against given input. § Each Unit developer must define Unit Test Cases for that Unit. § Unit Testing Frameworks are tools and libraries that help to implement the Unit Testing process. Example JUnit Unit Testing
11 § Statement Coverage: every statement is executed at least 1 time. § Decision Coverage: every decision point is executed at least 1 time § Decision-Condition Coverage: every decision tested with all possible outcomes Coverage
13 1. if (x<1 || y>5 && z!=0 || flag==true && s==null) 2. doThis(); 3. else 4. doThat(); § How many Test cases are needed to Test for 100% statement coverage? § How many Test cases are needed to Test for 100% decision coverage? § How many Test cases are needed to Test for 100% decision-condition coverage? Decision-Condition Coverage
16 1. if (a <10 || b>5) 2. x = 50 3. else 4. x = 0; 5. if (w == 5 || y>0) 6. z = 48; 7. else 8. z = 5; Total Statements? Statement Coverage with a = 0, b=0, w=0, y=0 ? Statement Coverage with a=10, b=4, w=5, y = anything ? Note: Remember that coverage is cumulative Test Yourselves
Winter 2023 Copyright. These slides can only be used as study material for the class CSC308 at Cal Poly. They cannot be distributed or used for another purpose.