Part I: Fundamentals of Software Testing
Ajitha Kruthiventy, Amrish Shah, Ashna Datye, Bharathy J, Deepa M G, James M, Jayapradeep J, Jeffin Jacob M, Kapil Mohan Sharma, Leena Warrier, Mahesh, Michael Frank, Muhammad Kashif Jamil Narendra N, Naveed M, Phaneendra Y, Prathima N, Ravi Kiran N, Rajeev D, Sarah Salahuddin, Siva Prasad B, Shalini R, Shilpa D, Subramanian D Ramprasad, Sunitha C N, Sunil Kumar M K, Usha Padmini K, Winston George and Harinath P V
Copyright (c) SofTReL 2004. Permission is granted to copy, distribute and/or modify this document under the terms of the GNU Free Documentation License, Version 1.2 or any later version published by the Free Software Foundation; with no Invariant Sections, no Front-Cover Texts, and no Back-Cover Texts. A copy of the license is included in the section entitled "GNU Free Documentation License".
Revision History
Ver. No. | Date | Description | Author |
0.1 | 06-Apr-04 | Initial document creation | Harinath, on behalf of STGB Team. |
0.2 | 01-May-04 | Incorporated Review Comments | Harinath, on behalf of STGB Team. |
0.3 | 03-July-04 | Draft Release | Harinath, on behalf of STGB Team |
Software Testing Guide Book. 1
1.The Software Testing Guide Book. 6
Forward. 6
About SofTReL. 7
Purpose of this Document 7
Authors. 8
Intended Audience. 9
How to use this Document 9
What this Guide Book is not 9
How to Contribute. 9
Future Enhancements. 9
Copyrights. 9
2. What is Software Testing and Why is it Important?. 10
3. Types of Development Systems. 12
3.1 Traditional Development Systems. 12
3.2 Iterative Development 12
3.3 Maintenance System.. 12
3.4 Purchased/Contracted Software. 13
=4. Types of Software Systems. 13
4.1 Batch Systems. 13
4.2 Event Control Systems. 13
4.3 Process Control Systems. 13
4.4 Procedure Control Systems. 14
4.5 Advanced Mathematical Models. 14
4.6 Message Processing Systems. 14
4.7 Diagnostic Software Systems. 14
4.8 Sensor and Signal Processing Systems. 14
4.9 Simulation Systems. 15
4.10 Database Management Systems. 19
4.11 Data Acquisition. 19
4.12 Data Presentation. 19
4.13 Decision and Planning Systems. 19
4.14 Pattern and Image Processing Systems. 19
4.15 Computer System Software Systems. 20
4.16 Software Development Tools. 20
5. Heuristics of Software Testing. 20
6. When Testing should occur?. 24
7. The Test Development Life Cycle (TDLC) 28
8. When should Testing stop?. 30
9. Verification Strategies. 30
9.1 Review. 30
9.2 Walkthrough. 33
9.3 Inspection. 34
10. Testing Types and Techniques. 36
10.1 White Box Testing. 38
10.1.1 Basis Path Testing. 41
10.1.2 Flow Graph Notation. 41
10.1.3 Cyclomatic Complexity. 41
10.1.4 Graph Matrices. 41
10.1.5 Control Structure Testing. 42
10.1.6 Loop Testing. 42
10.2 Black Box Testing. 43
10.2.1 Graph Based Testing Methods. 44
10.2.2 Error Guessing. 44
10.2.3 Boundary Value Analysis. 44
10.2.4 Equivalence Partitioning. 45
10.2.5 Comparison Testing. 46
10.2.6 Orthogonal Array Testing. 46
11. Designing Test Cases. 46
12. Validation Phase. 47
12.1 Unit Testing. 47
12.2 Integration Testing. 52
12.2.1 Top-Down Integration. 52
12.2.2 Bottom-Up Integration. 52
12.3 System Testing. 53
12.3.1 Compatibility Testing. 53
12.3.2 Recovery Testing. 54
12.3.3 Usability Testing. 54
12.3.4 Security Testing. 57
12.3.5 Stress Testing. 57
12.3.6 Performance Testing. 57
12.3.7 Content Management Testing. 67
12.3.8 Regression Testing. 68
12.4 Alpha Testing. 70
12.5 User Acceptance Testing. 71
12.6 Installation Testing. 71
12.7 Beta Testing. 72
13. Understanding Exploratory Testing. 73
14. Understanding Scenario Based Testing. 88
15. Understanding Agile Testing. 89
16. API Testing. 95
17. Understanding Rapid Testing. 102
18. Test Ware Development. 103
18.1 Test Strategy. 103
18.2 Test Plan. 107
18.3 Test Case Documents. 112
19. Defect Management. 118
19.1 What is a Defect?. 118
19.2 Defect Taxonomies. 119
19.3 Life Cycle of a Defect 120
20. Metrics for Testing. 120
References. 135
GNU Free Documentation License. 136
Download:
http://rapidshare.com/files/226739041/Software_Testing_Guide_Book_Part_1.doc