Documenti di Didattica
Documenti di Professioni
Documenti di Cultura
BSIT - 54
Kuvempu University
Shankaraghatta, Shimoga District, Karnataka
In
collaboration
with
II
First Edition
Second Edition
: May 2005
: May 2012
Printed at :
III
: Contributing Author :
Dr. B. M. Subraya
Infosys Technologies Ltd.
Mysore
IV
V
a
Contents
Chapter 1
INTRODUCTION TO SOFTWARE TESTING
1.1
1.2
1.3
1.4
1.5
1.6
1.7
1.8
1
1
3
4
5
6
6
7
7
8
9
Learning Objectives..........................................................................
Introduction.......................................................................................
What is Testing?...............................................................................
Approaches to Testing.......................................................................
Importance of Testing.......................................................................
Hurdles in Testing.............................................................................
Defect Distribution...........................................................................
Testing Fundamentals........................................................................
1.8.1 Testing Objectives....................................................................
1.8.2 Test Information Flow..............................................................
1.8.3 Test Case Design....................................................................
Chapter 2
TYPES OF SOFTWARE TESTING
11
2.1
2.2
2.3
11
11
12
Learning Objectives..........................................................................
Introduction......................................................................................
Types of Software Testing.................................................................
Chapter 3
SOFTWARE QUALITY ASSURANCE
20
3.1
3.2
20
20
Learning Objectives..........................................................................
Introduction......................................................................................
VI
3.3
3.4
3.5
3.6
3.7
Quality Concepts...............................................................................
Quality of design:...............................................................................
Quality of Conformance:...................................................................
Quality Control (QC).........................................................................
Quality Assurance (QA)....................................................................
3.7.1
Cost of Quality....................................................................
3.8 Software Quality Assurance SQA......................................................
3.8.1
Background Issues..............................................................
3.8.2
Software Reviews...............................................................
3.8.3
Cost impact of Software Defects..........................................
3.8.4
Defect Amplification and Removal.......................................
3.9 Formal Technical Reviews (FTR).......................................................
3.9.1
The Review Meeting...........................................................
3.9.2
Review reporting and record keeping....................................
3.9.3
Review Guidelines...............................................................
3.10 Statistical Quality Assurance..............................................................
3.11 Software Reliability............................................................................
3.11.1 Measures of Reliability and Availability.................................
3.11.2 Software Safety and Hazard Analysis...................................
3.12 The SQA Plan..................................................................................
3.12.1 The ISO Approach to Quality Assurance System..................
3.12.2 The ISO 9001 standard........................................................
21
22
22
23
23
23
25
25
27
27
28
31
31
31
32
32
35
36
36
37
38
38
Chapter 4
PROGRAM INSPECTIONS, WALKTHROUGHS, AND REVIEWS
41
4.1
4.2
4.3
4.4
4.5
4.6
41
41
42
43
44
47
Learning Objectives..........................................................................
Introduction......................................................................................
Inspections and Walkthroughs............................................................
Code Inspections..............................................................................
An Error Checklist for Inspections......................................................
Walkthroughs....................................................................................
Chapter 5
TEST CASE DESIGN
49
5.1
5.2
5.3
5.4
49
19
50
51
Learning Objectives..........................................................................
Introduction......................................................................................
White Box Testing ...........................................................................
Basis Path Testing.............................................................................
VII
5.5
5.6
5.7
5.8
5.4.1
Flow Graph Notation...........................................................
5.4.2 Cyclomatic Complexity............................................................
5.4.3 Deriving Test Cases.................................................................
5.4.4 Graph Matrices .......................................................................
Control Structure testing....................................................................
5.5.1 Conditions Testing...................................................................
5.5.2 Data Flow Testing...................................................................
5.5.3 Loop Testing...........................................................................
Black Box Testing.............................................................................
5.6.1 Equivalence Partitioning...........................................................
5.6.2 Boundary Value Analysis.........................................................
5.6.3 Cause Effect Graphing Techniques...........................................
5.6.4 Comparison Testing.................................................................
Static Program Analysis....................................................................
5.7.1 Program Inspections................................................................
5.7.2 Mathematical Program Verification ...........................................
5.7.3 Static Program Analyzers........................................................
Automated Testing Tools...................................................................
51
52
54
54
56
56
57
58
59
60
61
61
63
63
63
63
64
64
Chapter 6
TESTING FOR SPECIALIZED ENVIRONMENTS
66
6.1
6.2
6.3
6.4
6.5
66
66
66
69
69
Learning Objectives..........................................................................
Introduction......................................................................................
Testing GUIs....................................................................................
Testing of Client/Server Architectures ...............................................
Testing documentation and Help facilities...........................................
Chapter 7
TESTING APPROACHES & ISSUES
71
7.1
7.2
7.3
7.4
7.5
71
71
72
74
75
75
76
78
79
79
80
7.6
Learning Objectives...........................................................................
Introduction......................................................................................
A Software Testing Strategy ..............................................................
Strategic issues.................................................................................
Unit Testing......................................................................................
7.5.1 Unit test consideration..............................................................
7.5.2 Checklist for interface tests......................................................
7.5.3 Unit test procedures.................................................................
Integration Testing.............................................................................
7.6.1 Different Integration Strategies.................................................
7.6.2 Top down integration................................................................
VIII
7.7
7.8
7.9
81
81
82
84
84
85
85
85
86
86
87
87
88
88
90
90
92