Software Testing: Testing Across the Entire Software Development Life Cycle

advertisement

Software Testing: Testing Across the Entire Software Development Life Cycle

Introduction

Software Testing: Testing Across the Entire Software Development Life Cycle


    An informal survey of twenty-one U.S. universities by the authors found that nineteen were without any software testing courses. When talking with the faculty responsible for the software testing courses in three of the universities, we learned that the largest single impediment to creating a software testing course was the absence of a good textbook. We were told that the current selection of textbooks necessitated a combination of three or four to cover many of the topics, with some topics not even covered at all. This situation leaves much of the material coverage to the professor. If he or she does not have a background in software testing, the textbooks leave gaps that is hard to fill.

Whereas this situation is disconcerting, universities and businesses in Europe and Asia seem to value testing expertise more than in the US. Instead of only three of twenty-one universities delivering testing education as in the US, the ratio in Europe is more like seven out of ten. The reason for this discrepancy is because academic and business cultures that already value software testing do not need to be sold on the value of a comprehensive, basic textbook on the subject.

Software Engineering: Architecture-driven Software Development

advertisement

Table Of Content

1. Overview of Testing 1

1.1 Introduction 1

1.2 Objectives and Limits of Testing 2

1.3 The Value Versus Cost of Testing 11

1.4 Relationship of Testing to the Software Development Life Cycle 16

1.5 Tester Versus Developer Roles in Software Testing 22

1.6 Putting Software Testing in Perspective 25

1.7 Summary 25

2. The Software Development Life Cycle 29

2.1 Introduction 29

2.2 Methodologies and Tools 29

2.3 The Evolution of System Development Life Cycles 30

2.4 The Phased Development Methodology 33

2.5 The Preliminary Investigation Stage 37

2.6 The Analysis Stage 43

2.7 The Design Stage 46

2.8 The Preliminary Construction Stage 50

2.9 The Final Construction Stage 54

2.10 The Installation Stage 56

2.11 Putting Phased Development in Perspective 57

2.12 Summary 57

3. Overview of Structured Testing 59

3.1 Introduction 59

3.2 Checklist Mentality for Software Testers 60

3.3 SPRAE—A Generic Structured Testing Approach 61

3.4 Putting the Overview of Structured Testing in Perspective 65

4. Testing Strategy 66

4.1 Introduction 66

4.2 The Chess Pieces for Testing Strategies 66

4.3 The Two-Dimensional Testing Strategy Chess Board 70

4.4 The Three-Dimensional Testing Strategy Chess Board 75

4.5 Putting the Testing Strategy into Perspective 77

5. Test Planning 79

5.1 Introduction 79

5.2 The Test Plan 79

5.3 Test Cases 83

5.4 Writing Your Test Plan and Test Cases in the Real World 88

5.5 Test Document Standards 90

5.6 Putting Test Planning in Perspective 91

6. Static Testing 93

6.1 Introduction 93

6.2 Goal of Static Testing 93

6.3 Candidate Documents for Static Testing 94

6.4 Static Testing Techniques 96

6.5 Tracking Defects Detected by Static Testing 98

6.6 Putting Static Testing in Perspective 98

7. Functional Testing 99

7.1 Introduction 99

7.2 Functional Test Cases from Use Cases 100

7.3 An Approach to Functional Testing 103

7.4 An Approach to Regression Testing 106

7.5 Detailed White Box Testing Techniques 107

7.6 Detailed Black Box Testing Techniques 112

7.7 Summary 119

7.8 Putting Functional Testing in Perspective 121

8. Structural (Non-functional) Testing 122

8.1 Introduction 122

8.2 Interface Testing 123

8.3 Security Testing 124

8.4 Installation Testing 125

8.5 The Smoke Test 125

8.6 Administration Testing 126

8.7 Backup and Recovery Testing 126

8.8 Putting Structural Testing in Perspective 127

8.9 Summary 127

9. Performance Testing 129

9.1 Introduction 129

9.2 Workload Planning Techniques 130

9.3 Workload Execution Techniques 134

9.4 Component Performance Testing 135

9.5 Round Trip Performance 136

9.6 Putting Performance Testing in Perspective 147

9.7 Summary 148

10. The Testing Environment 150

10.1 Introduction 150

10.2 Simulations 151

10.3 Benchmarking 151

10.4 Testing Environments 152

10.5 The Goal of a Testing Environment 152

10.6 Good Testing Environments and Why They Should Be Used 155

10.7 Bad Testing Environments and Why They Should Be Avoided 156

10.8 Putting the Testing Environment in Perspective 157

10.9 Summary 157

Download full PDF in Comment section

advertisement

1 Comments

Previous Post Next Post