Download presentation
Presentation is loading. Please wait.
Published byEric Crawford Modified over 9 years ago
1
WARNING These slides are not optimized for printing or exam preparation. These are for lecture delivery only. These slides are made for PowerPoint 2010. They may not show up well on other PowerPoint versions. You can download PowerPoint 2010 viewer from here.here These slides contain a lot of animations. For optimal results, watch in slideshow mode. 30 min
5
But it worked in my machine! Our testers Your software
6
Quality Assurance: Testing and Beyond CS2103/T, Lecture 9, Part 1, [Oct 17, 2014]
8
ValidationVerification [Quality Assurance]
9
ValidationVerification [Quality Assurance] Are we building the correct product? Are we building the product correctly?
10
ValidationVerification [Quality Assurance] Are we building the correct product? Are we building the product correctly?
11
ValidationVerification [Quality Assurance] Are we building the correct product? Are we building the product correctly? FAIL!
12
ValidationVerification [Quality Assurance] Are we building the correct product? Are we building the product correctly? FAIL! FAIL!
13
ValidationVerification [Quality Assurance] Buggy requirements Buggy code FAIL! FAIL!
14
ValidationVerification [Quality Assurance] Two QA activities for a PC version of a ‘Snakes and ladders’ game: a) Ensure that the game allows players to decide who throws the die first. b) When more than one piece is on a square, ensure that it is the piece that belongs to the current player that will be moved. (Are we building the correct product?) (Are we building the product correctly?) snakes {a|b} e.g. snakes a Which one is more related to verification than validation? 77577 OR tinyurl.com/answerpost
15
ValidationVerification [Quality Assurance]
16
ValidationVerification [Quality Assurance]
17
ValidationVerification E.g. Acceptance testingE.g. System testing [Quality Assurance]
18
ValidationVerification E.g. Acceptance testingE.g. System testing [Quality Assurance] Product
19
ValidationVerification E.g. Acceptance testingE.g. System testing [Quality Assurance] Product
20
ValidationVerification E.g. Acceptance testingE.g. System testing [Quality Assurance] Product
21
ValidationVerification E.g. Acceptance testingE.g. System testing [Quality Assurance] Product
22
ValidationVerification E.g. Acceptance testingE.g. System testing [Quality Assurance] Product But it worked in my machine!
23
ValidationVerification E.g. Acceptance testingE.g. System testing [Quality Assurance] Product
24
ValidationVerification E.g. Acceptance testingE.g. System testing [Quality Assurance] Product System specification Requirements specification I want to find an email from a given person quickly. The system shall allow sorting by sender’s email address. Business AnalystsDesignersEngineers
25
ValidationVerification E.g. Acceptance testingE.g. System testing [Quality Assurance] Product System specification Requirements specification
26
ValidationVerification [Quality Assurance] Product E.g. Acceptance testingE.g. System testing
27
ValidationVerification [Quality Assurance] Product E.g. Acceptance testingE.g. System testing
28
ValidationVerification [Quality Assurance] Product E.g. Acceptance testingE.g. System testing
29
ValidationVerification E.g. Acceptance testingE.g. System testing Back-end GUI [Quality Assurance] Product
30
ValidationVerification E.g. Acceptance testingE.g. System testing Back-end GUI [Quality Assurance] GUI testing
31
ValidationVerification E.g. Acceptance testingE.g. System testing Back-end GUI [Quality Assurance] GUI testing
32
ValidationVerification E.g. Acceptance testingE.g. System testing Back-end GUI [Quality Assurance] GUI testing
33
ValidationVerification E.g. Acceptance testingE.g. System testing Back-end GUI [Quality Assurance] GUI testing GUI Logic Automated API tester Manual testing (or automate)
34
ValidationVerification E.g. Acceptance testingE.g. System testing Back-end GUI [Quality Assurance] GUI testing GUI Logic Automated API tester Manual testing (or automate)
35
ValidationVerification E.g. Acceptance testingE.g. System testing Back-end GUI [Quality Assurance] GUI testing
41
ValidationVerification E.g. Acceptance testingE.g. System testing Back-end GUI [Quality Assurance] GUI testing
42
ValidationVerification E.g. Acceptance testingE.g. System testing Back-end GUI [Quality Assurance] GUI testing
43
ValidationVerification E.g. Acceptance testingE.g. System testing Back-end GUI [Quality Assurance] GUI testing
44
ValidationVerification E.g. Acceptance testingE.g. System testing Back-end GUI [Quality Assurance]
45
ValidationVerification E.g. Acceptance testingE.g. System testing Back-end GUI [Quality Assurance]
46
ValidationVerification E.g. Acceptance testingE.g. System testing [Quality Assurance] ← How much of this is being tested?
47
ValidationVerification E.g. Acceptance testingE.g. System testing [Quality Assurance] ← How much of this is being tested?
52
Using EclEmma coverage tool on TEAMMATES
53
ValidationVerification E.g. Acceptance testingE.g. System testing [Quality Assurance] ← How much of this is being tested?
54
ValidationVerification E.g. Acceptance testingE.g. System testing [Quality Assurance] ← How much of this is being tested? Statement coverage Function coverage Condition coverage Exit/entry coverage Branch coverage Path coverage
55
ValidationVerification E.g. Acceptance testingE.g. System testing [Quality Assurance] ← How much of this is being tested? Statement coverage Path coverage
56
ValidationVerification E.g. Acceptance testingE.g. System testing [Quality Assurance] ← How much of this is being tested? Statement coverage Path coverage void readInput(){ while ( hasInput() ) input += readFromKeyboard(); }
57
ValidationVerification E.g. Acceptance testingE.g. System testing [Quality Assurance] ← How much of this is being tested? Statement coverage void readInput(){ while ( hasInput() ) input += readFromKeyboard(); }
58
ValidationVerification E.g. Acceptance testingE.g. System testing [Quality Assurance] ← How much of this is being tested? void readInput(){ while ( hasInput() ) input += readFromKeyboard(); } Path coverage
59
ValidationVerification E.g. Acceptance testingE.g. System testing [Quality Assurance] ← How much of this is being tested? void readInput(){ while ( hasInput() ) input += readFromKeyboard(); } Path coverage
60
ValidationVerification E.g. Acceptance testingE.g. System testing [Quality Assurance] ← How much of this is being tested? void readInput(){ while ( hasInput() ) input += readFromKeyboard(); } Path coverage
61
ValidationVerification E.g. Acceptance testingE.g. System testing [Quality Assurance] ← How much of this is being tested? void readInput(){ while ( hasInput() ) input += readFromKeyboard(); } Path coverage
62
ValidationVerification E.g. Acceptance testingE.g. System testing [Quality Assurance] ← How much of this is being tested? void readInput(){ while ( hasInput() ) input += readFromKeyboard(); } Path coverage
63
ValidationVerification E.g. Acceptance testingE.g. System testing [Quality Assurance] ← How much of this is being tested? Path coverage void readInput(){ while ( hasInput() ) input += readFromKeyboard(); } Control Flow Graphs
64
ValidationVerification E.g. Acceptance testingE.g. System testing [Quality Assurance] ← How much of this is being tested? Statement coverage Function coverage Condition coverage Exit/entry coverage Branch coverage Path coverage
65
ValidationVerification E.g. Acceptance testing [Quality Assurance] E.g. System testing just testing?
66
ValidationVerification E.g. Acceptance testing [Quality Assurance] E.g. System testing Other QA techniques just testing?
67
[Quality Assurance] Other QA techniques
68
ValidationVerification E.g. Acceptance testing [Quality Assurance] Code reviews static analysis formal methods … Other QA techniques
69
ValidationVerification E.g. Acceptance testing [Quality Assurance] Other QA techniques Code reviews static analysis formal methods …
70
ValidationVerification E.g. Acceptance testing [Quality Assurance] Other QA techniques Code reviews static analysis formal methods …
71
ValidationVerification E.g. Acceptance testing [Quality Assurance] Other QA techniques Code reviews static analysis formal methods …
72
ValidationVerification E.g. Acceptance testing [Quality Assurance] Other QA techniques Code reviews static analysis formal methods …
73
ValidationVerification E.g. Acceptance testing [Quality Assurance] Other QA techniques Code reviews static analysis formal methods … Using CodeProAnalytix static analysis tool on TEAMMATES
74
ValidationVerification E.g. Acceptance testing [Quality Assurance] Other QA techniques Code reviews static analysis formal methods …
75
ValidationVerification E.g. Acceptance testing [Quality Assurance] Other QA techniques Code reviews static analysis formal methods … SUT doubleAmount(int):int SUT doubleAmount(int):int
76
ValidationVerification E.g. Acceptance testing [Quality Assurance] Other QA techniques Code reviews static analysis formal methods … Text case 1: Input: 23 Expected output: 46 Text case 2: Input: 10 Expected output : 20 Text case n: Input: -2 Expected output : -4 … Testing SUT doubleAmount(int):int SUT doubleAmount(int):int
77
ValidationVerification E.g. Acceptance testing [Quality Assurance] Other QA techniques Code reviews static analysis formal methods … Mathematically prove if input = x then, output = 2x Testing SUT doubleAmount(int):int SUT doubleAmount(int):int Text case 1: Input: 23 Expected output: 46 Text case 2: Input: 10 Expected output : 20 Text case n: Input: -2 Expected output : -4 …
78
ValidationVerification E.g. Acceptance testing [Quality Assurance] Other QA techniques Code reviews static analysis formal methods …
79
ValidationVerification E.g. Acceptance testing [Quality Assurance] Other QA techniques Code reviews static analysis formal methods …
82
Compulsory: relate to the project. Optional: use in project
83
If all tests pass and those tests achieve100% path coverage (all possible execution paths through the code have been tested), can the software still have bugs? (Discuss with neighbors before submitting) buggy {yes|no} e.g. buggy yes 77577 OR tinyurl.com/answerpost
Similar presentations
© 2025 SlidePlayer.com. Inc.
All rights reserved.