Software Testing and Continuous Quality Improvement, Second Edition

版权声明:原创作品,允许转载,转载时请务必以超链接形式标明文章原始出版、作者信息和本声明。否则将追究法律责任。 http://blog.csdn.net/topmvp - topmvp
Software Testing and Continuous Quality Improvement, Second Edition, illustrates a quality framework for software testing in traditional structured and unstructured environments. Section I reviews modern QA principles and best practices. Section II examines the waterfall development methodology. The next section contrasts waterfall development methodology with the rapid application spiral environment. Section IV discusses fundamental challenges of maintaining and improving existing systems. Section V contains a history of software testing, previews future testing tools, and guides the choosing of proper tools for various environments. It provides examples of some of the most popular products, and offers a detailed methodology for evaluating them.
http://rapidshare.com/files/50522166/0849325242.rar
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
Software Testing and Continuous Quality Improvement<br><br>SECTION I SOFTWARE QUALITY IN PERSPECTIVE . . . . . . . . . . . . . . . 1<br>1 Quality Assurance Framework. . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5<br>What Is Quality?. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5<br>Prevention versus Detection . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6<br>Verification versus Validation. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7<br>Software Quality Assurance . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8<br>Components of Quality Assurance . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9<br>Software Testing. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10<br>Quality Control. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 11<br>Software Configuration Management . . . . . . . . . . . . . . . . . . . . . . . . . 12<br>Elements of Software Configuration Management. . . . . . . . . . . . . . . 12<br>Component Identification. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 13<br>Version Control. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 14<br>Configuration Building. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 14<br>Change Control. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 15<br>Software Quality Assurance Plan. . . . . . . . . . . . . . . . . . . . . . . . . . . . . 16<br>Steps to Develop and Implement a Software Quality <br>Assurance Plan. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 16<br>Step 1. Document the Plan. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 16<br>Step 2. Obtain Management Acceptance . . . . . . . . . . . . . . . . . . . . 18<br>Step 3. Obtain Development Acceptance. . . . . . . . . . . . . . . . . . . . 18<br>Step 4. Plan for Implementation of the SQA Plan . . . . . . . . . . . . . 19<br>Step 5. Execute the SQA Plan. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 19<br>Quality Standards. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 19<br>ISO9000. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 19<br>Capability Maturity Model (CMM) . . . . . . . . . . . . . . . . . . . . . . . . . 20<br>Level 1 — Initial. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 21<br>Level 2 — Repeatable. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 21<br>Level 3 — Defined. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 22<br>Level 4 — Managed. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 22<br>Level 5 — Optimized . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 23<br>PCMM . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 23<br>CMMI. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 24<br>Malcom Baldrige National Quality Award . . . . . . . . . . . . . . . . . . . 24<br>Notes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 27<br>vii<br><br> <br>Software Testing and Continuous Quality Improvement<br>2 Overview of Testing Techniques . . . . . . . . . . . . . . . . . . . . . . . . . . 29<br>Black-Box Testing (Functional). . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 29<br>White-Box Testing (Structural). . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 30<br>Gray-Box Testing (Functional and Structural) . . . . . . . . . . . . . . . . . . 30<br>Manual versus Automated Testing . . . . . . . . . . . . . . . . . . . . . . . . . 31<br>Static versus Dynamic Testing. . . . . . . . . . . . . . . . . . . . . . . . . . . . . 31<br>Taxonomy of Software Testing Techniques . . . . . . . . . . . . . . . . . . . . 32<br>3 Quality through Continuous Improvement Process . . . . . . . . . . . 41<br>Contribution of Edward Deming. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 41<br>Role of Statistical Methods. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 42<br>Cause-and-Effect Diagram. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 42<br>Flow Chart . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 42<br>Pareto Chart. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 42<br>Run Chart . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 42<br>Histogram. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 43<br>Scatter Diagram . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 43<br>Control Chart . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 43<br>Deming’s 14 Quality Principles. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 43<br>Point 1: Create Constancy of Purpose. . . . . . . . . . . . . . . . . . . . . . . 43<br>Point 2: Adopt the New Philosophy . . . . . . . . . . . . . . . . . . . . . . . . 44<br>Point 3: Cease Dependence on Mass Inspection. . . . . . . . . . . . . . 44<br>Point 4: End the Practice of Awarding Business on Price <br>Tag Alone . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 44<br>Point 5: Improve Constantly and Forever the System <br>of Production and Service . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 45<br>Point 6: Institute Training and Retraining . . . . . . . . . . . . . . . . . . . 45<br>Point 7: Institute Leadership . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 45<br>Point 8: Drive Out Fear . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 46<br>Point 9: Break Down Barriers between Staff Areas . . . . . . . . . . . . 46<br>Point 10: Eliminate Slogans, Exhortations, and Targets <br>for the Workforce. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 47<br>Point 11: Eliminate Numerical Goals. . . . . . . . . . . . . . . . . . . . . . . . 47<br>Point 12: Remove Barriers to Pride of Workmanship . . . . . . . . . . 47<br>Point 13: Institute a Vigorous Program of Education and <br>Retraining. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 48<br>Point 14: Take Action to Accomplish the Transformation. . . . . . 48<br>Continuous Improvement through the Plan, Do, Check, <br>Act Process . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 48<br>Going around the PDCA Circle . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 50<br>SECTION II LIFE CYCLE TESTING REVIEW . . . . . . . . . . . . . . . . . . . . . 51<br>4 Overview . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 53<br>Waterfall Development Methodology . . . . . . . . . . . . . . . . . . . . . . . . . 53<br>Continuous Improvement “Phased” Approach . . . . . . . . . . . . . . . . . 54<br>viii<br><br> <br>Contents<br>Psychology of Life Cycle Testing . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 54<br>Software Testing as a Continuous Improvement Process. . . . . . . . . 55<br>The Testing Bible: Software Test Plan. . . . . . . . . . . . . . . . . . . . . . . . . 58<br>Major Steps to Develop a Test Plan. . . . . . . . . . . . . . . . . . . . . . . . . . . 60<br>1. Define the Test Objectives . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 60<br>2. Develop the Test Approach . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 60<br>3. Define the Test Environment . . . . . . . . . . . . . . . . . . . . . . . . . . . . 60<br>4. Develop the Test Specifications . . . . . . . . . . . . . . . . . . . . . . . . . 61<br>5. Schedule the Test . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 61<br>6. Review and Approve the Test Plan. . . . . . . . . . . . . . . . . . . . . . . 61<br>Components of a Test Plan. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 61<br>Technical Reviews as a Continuous Improvement Process. . . . . . . 61<br>Motivation for Technical Reviews . . . . . . . . . . . . . . . . . . . . . . . . . . . . 65<br>Types of Reviews . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 66<br>Structured Walkthroughs . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 66<br>Inspections . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 66<br>Participant Roles . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 69<br>Steps for an Effective Review. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 70<br>1. Plan for the Review Process. . . . . . . . . . . . . . . . . . . . . . . . . . . . . 70<br>2. Schedule the Review. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 70<br>3. Develop the Review Agenda. . . . . . . . . . . . . . . . . . . . . . . . . . . . . 71<br>4. Create a Review Report . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 71<br>5 Verifying the Requirements Phase. . . . . . . . . . . . . . . . . . . . . . . . . 73<br>Testing the Requirements with Technical Reviews. . . . . . . . . . . . . . 74<br>Inspections and Walkthroughs. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 74<br>Checklists . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 74<br>Methodology Checklist . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 75<br>Requirements Traceability Matrix. . . . . . . . . . . . . . . . . . . . . . . . . . . . 76<br>Building the System/Acceptance Test Plan . . . . . . . . . . . . . . . . . . . . 76<br>6 Verifying the Logical Design Phase . . . . . . . . . . . . . . . . . . . . . . . . 79<br>Data Model, Process Model, and the Linkage. . . . . . . . . . . . . . . . . . . 79<br>Testing the Logical Design with Technical Reviews . . . . . . . . . . . . . 80<br>Refining the System/Acceptance Test Plan . . . . . . . . . . . . . . . . . . . . 81<br>7 Verifying the Physical Design Phase . . . . . . . . . . . . . . . . . . . . . . . 83<br>Testing the Physical Design with Technical Reviews . . . . . . . . . . . . 83<br>Creating Integration Test Cases. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 85<br>Methodology for Integration Testing. . . . . . . . . . . . . . . . . . . . . . . . . . 85<br>Step 1: Identify Unit Interfaces. . . . . . . . . . . . . . . . . . . . . . . . . . . . . 85<br>Step 2: Reconcile Interfaces for Completeness. . . . . . . . . . . . . . . 85<br>Step 3: Create Integration Test Conditions . . . . . . . . . . . . . . . . . . 86<br>Step 4: Evaluate the Completeness of Integration Test <br>Conditions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 86<br>ix<br><br> <br>Software Testing and Continuous Quality Improvement<br>8 Verifying the Program Unit Design Phase . . . . . . . . . . . . . . . . . . . 87<br>Testing the Program Unit Design with Technical Reviews . . . . . . . . 87<br>Sequence. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 87<br>Selection . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 87<br>Iteration. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 87<br>Creating Unit Test Cases . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 88<br>9 Verifying the Coding Phase. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 91<br>Testing Coding with Technical Reviews . . . . . . . . . . . . . . . . . . . . . . . 91<br>Executing the Test Plan. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 91<br>Unit Testing. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 92<br>Integration Testing. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 93<br>System Testing . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 93<br>Acceptance Testing . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 94<br>Defect Recording . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 95<br>SECTION III SOFTWARE TESTING METHODOLOGY. . . . . . . . . . . . . . 97<br>10 Development Methodology Overview . . . . . . . . . . . . . . . . . . . . . . 99<br>Limitations of Life Cycle Development . . . . . . . . . . . . . . . . . . . . . . . . 99<br>The Client/Server Challenge. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 100<br>Psychology of Client/Server Spiral Testing. . . . . . . . . . . . . . . . . . . . 101<br>The New School of Thought. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 101<br>Tester/Developer Perceptions. . . . . . . . . . . . . . . . . . . . . . . . . . . . 102<br>Project Goal: Integrate QA and Development . . . . . . . . . . . . . . . 103<br>Iterative/Spiral Development Methodology. . . . . . . . . . . . . . . . . 104<br>Role of JADs . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 106<br>Role of Prototyping . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 107<br>Methodology for Developing Prototypes . . . . . . . . . . . . . . . . . . . . . 108<br>1. Develop the Prototype . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 108<br>2. Demonstrate Prototypes to Management. . . . . . . . . . . . . . . . . 110<br>3. Demonstrate Prototype to Users. . . . . . . . . . . . . . . . . . . . . . . . 110<br>4. Revise and Finalize Specifications. . . . . . . . . . . . . . . . . . . . . . . 111<br>5. Develop the Production System . . . . . . . . . . . . . . . . . . . . . . . . 111<br>Continuous Improvement “Spiral” Testing Approach. . . . . . . . . . . 112<br>11 Information Gathering (Plan). . . . . . . . . . . . . . . . . . . . . . . . . . . . 117<br>Step 1: Prepare for the Interview . . . . . . . . . . . . . . . . . . . . . . . . . . . . 117<br>Task 1: Identify the Participants . . . . . . . . . . . . . . . . . . . . . . . . . . 117<br>Task 2: Define the Agenda. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 118<br>Step 2: Conduct the Interview . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 118<br>Task 1: Understand the Project . . . . . . . . . . . . . . . . . . . . . . . . . . . 118<br>Task 2: Understand the Project Objectives . . . . . . . . . . . . . . . . . 121<br>Task 3: Understand the Project Status . . . . . . . . . . . . . . . . . . . . . 121<br>Task 4: Understand the Project Plans. . . . . . . . . . . . . . . . . . . . . . 122<br>Task 5: Understand the Project Development Methodology. . . 122<br>Task 6: Identify the High-Level Business Requirements. . . . . . . 123<br>x<br><br>Contents<br>Task 7: Perform Risk Analysis . . . . . . . . . . . . . . . . . . . . . . . . . . . . 124<br>Computer Risk Analysis. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 124<br>Method 1 — Judgment and Instinct. . . . . . . . . . . . . . . . . . . . . 125<br>Method 2 — Dollar Estimation . . . . . . . . . . . . . . . . . . . . . . . . . 125<br>Method 3 — Identifying and Weighting Risk Attributes. . . . . 125<br>Step 3: Summarize the Findings. . . . . . . . . . . . . . . . . . . . . . . . . . . . . 126<br>Task 1: Summarize the Interview. . . . . . . . . . . . . . . . . . . . . . . . . . 126<br>Task 2: Confirm the Interview Findings . . . . . . . . . . . . . . . . . . . . 127<br>12 Test Planning (Plan) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 129<br>Step 1: Build a Test Plan . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 130<br>Task 1: Prepare an Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . 130<br>Task 2: Define the High-Level Functional Requirements <br>(in Scope). . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 131<br>Task 3: Identify Manual/Automated Test Types . . . . . . . . . . . . . 132<br>Task 4: Identify the Test Exit Criteria . . . . . . . . . . . . . . . . . . . . . . 133<br>Task 5: Establish Regression Test Strategy . . . . . . . . . . . . . . . . . 134<br>Task 6: Define the Test Deliverables. . . . . . . . . . . . . . . . . . . . . . . 136<br>Task 7: Organize the Test Team. . . . . . . . . . . . . . . . . . . . . . . . . . . 137<br>Task 8: Establish a Test Environment. . . . . . . . . . . . . . . . . . . . . . 138<br>Task 9: Define the Dependencies. . . . . . . . . . . . . . . . . . . . . . . . . . 139<br>Task 10: Create a Test Schedule . . . . . . . . . . . . . . . . . . . . . . . . . . 139<br>Task 11: Select the Test Tools . . . . . . . . . . . . . . . . . . . . . . . . . . . . 142<br>Task 12: Establish Defect Recording/Tracking Procedures . . . . 143<br>Task 13: Establish Change Request Procedures . . . . . . . . . . . . . 145<br>Task 14: Establish Version Control Procedures. . . . . . . . . . . . . . 147<br>Task 15: Define Configuration Build Procedures. . . . . . . . . . . . . 147<br>Task 16: Define Project Issue Resolution Procedures. . . . . . . . . 148<br>Task 17: Establish Reporting Procedures. . . . . . . . . . . . . . . . . . . 148<br>Task 18: Define Approval Procedures. . . . . . . . . . . . . . . . . . . . . . 149<br>Step 2: Define the Metric Objectives. . . . . . . . . . . . . . . . . . . . . . . . . 149<br>Task 1: Define the Metrics . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 150<br>Task 2: Define the Metric Points . . . . . . . . . . . . . . . . . . . . . . . . . . 151<br>Step 3: Review/Approve the Plan. . . . . . . . . . . . . . . . . . . . . . . . . . . . 154<br>Task 1: Schedule/Conduct the Review . . . . . . . . . . . . . . . . . . . . . 154<br>Task 2: Obtain Approvals. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 154<br>13 Test Case Design (Do) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 157<br>Step 1: Design Function Tests. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 157<br>Task 1: Refine the Functional Test Requirements. . . . . . . . . . . . 157<br>Task 2: Build a Function/Test Matrix . . . . . . . . . . . . . . . . . . . . . . 159<br>Step 2: Design GUI Tests . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 163<br>Ten Guidelines for Good GUI Design. . . . . . . . . . . . . . . . . . . . . . . 164<br>Task 1: Identify the Application GUI Components . . . . . . . . . . . 165<br>Task 2: Define the GUI Tests. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 165<br>xi<br><br>Software Testing and Continuous Quality Improvement<br>Step 3: Define the System/Acceptance Tests . . . . . . . . . . . . . . . . . . 167<br>Task 1: Identify Potential System Tests. . . . . . . . . . . . . . . . . . . . . 167<br>Task 2: Design System Fragment Tests. . . . . . . . . . . . . . . . . . . . . 168<br>Task 3: Identify Potential Acceptance Tests. . . . . . . . . . . . . . . . . 169<br>Step 4: Review/Approve Design . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 169<br>Task 1: Schedule/Prepare for Review . . . . . . . . . . . . . . . . . . . . . . 169<br>Task 2: Obtain Approvals . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 169<br>14 Test Development (Do) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 173<br>Step 1: Develop Test Scripts . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 173<br>Task 1: Script the Manual/Automated GUI/Function Tests . . . . 173<br>Task 2: Script the Manual/Automated System Fragment <br>Tests . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 173<br>Step 2: Review/Approve Test Development . . . . . . . . . . . . . . . . . . . 174<br>Task 1: Schedule/Prepare for Review . . . . . . . . . . . . . . . . . . . . . . 174<br>Task 2: Obtain Approvals . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 174<br>15 Test Coverage through Traceability. . . . . . . . . . . . . . . . . . . . . . . 177<br>Use Cases and Traceability. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 178<br>Summary . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 180<br>16 Test Execution/Evaluation (Do/Check). . . . . . . . . . . . . . . . . . . . . 181<br>Step 1: Setup and Testing . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 181<br>Task 1: Regression Test the Manual/Automated Spiral Fixes. . . 181<br>Task 2: Execute the Manual/Automated New Spiral Tests. . . . . 182<br>Task 3: Document the Spiral Test Defects . . . . . . . . . . . . . . . . . . 183<br>Step 2: Evaluation. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 183<br>Task 1: Analyze the Metrics . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 183<br>Step 3: Publish Interim Report . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 184<br>Task 1: Refine the Test Schedule . . . . . . . . . . . . . . . . . . . . . . . . . . 184<br>Task 2: Identify Requirement Changes . . . . . . . . . . . . . . . . . . . . . 185<br>17 Prepare for the Next Spiral (Act) . . . . . . . . . . . . . . . . . . . . . . . . . 187<br>Step 1: Refine the Tests . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 187<br>Task 1: Update the Function/GUI Tests. . . . . . . . . . . . . . . . . . . . . 187<br>Task 2: Update the System Fragment Tests . . . . . . . . . . . . . . . . . 188<br>Task 3: Update the Acceptance Tests. . . . . . . . . . . . . . . . . . . . . . 189<br>Step 2: Reassess the Team, Procedures, and Test Environment. . . . 189<br>Task 1: Evaluate the Test Team . . . . . . . . . . . . . . . . . . . . . . . . . . . 189<br>Task 2: Review the Test Control Procedures . . . . . . . . . . . . . . . . 189<br>Task 3: Update the Test Environment. . . . . . . . . . . . . . . . . . . . . . 190<br>Step 3: Publish Interim Test Report. . . . . . . . . . . . . . . . . . . . . . . . . . 191<br>Task 1: Publish the Metric Graphics . . . . . . . . . . . . . . . . . . . . . . . 191<br>Test Case Execution Status . . . . . . . . . . . . . . . . . . . . . . . . . . . . 191<br>Defect Gap Analysis . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 191<br>Defect Severity Status. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 191<br>Test Burnout Tracking . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 192<br>xii<br><br>Contents<br>18 Conduct the System Test. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 195<br>Step 1: Complete System Test Plan . . . . . . . . . . . . . . . . . . . . . . . . . . 195<br>Task 1: Finalize the System Test Types. . . . . . . . . . . . . . . . . . . . . 195<br>Task 2: Finalize System Test Schedule . . . . . . . . . . . . . . . . . . . . . 197<br>Task 3: Organize the System Test Team. . . . . . . . . . . . . . . . . . . . 197<br>Task 4: Establish the System Test Environment . . . . . . . . . . . . . 197<br>Task 5: Install the System Test Tools . . . . . . . . . . . . . . . . . . . . . . 200<br>Step 2: Complete System Test Cases. . . . . . . . . . . . . . . . . . . . . . . . . 200<br>Task 1: Design/Script the Performance Tests . . . . . . . . . . . . . . . 200<br>Monitoring Approach. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 201<br>Probe Approach . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 202<br>Test Drivers. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 202<br>Task 2: Design/Script the Security Tests . . . . . . . . . . . . . . . . . . . 203<br>A Security Design Strategy . . . . . . . . . . . . . . . . . . . . . . . . . . . . 203<br>Task 3: Design/Script the Volume Tests . . . . . . . . . . . . . . . . . . . . 204<br>Task 4: Design/Script the Stress Tests . . . . . . . . . . . . . . . . . . . . . 205<br>Task 5: Design/Script the Compatibility Tests. . . . . . . . . . . . . . . 206<br>Task 6: Design/Script the Conversion Tests. . . . . . . . . . . . . . . . . 206<br>Task 7: Design/Script the Usability Tests. . . . . . . . . . . . . . . . . . . 207<br>Task 8: Design/Script the Documentation Tests . . . . . . . . . . . . . 208<br>Task 9: Design/Script the Backup Tests . . . . . . . . . . . . . . . . . . . . 208<br>Task 10: Design/Script the Recovery Tests . . . . . . . . . . . . . . . . . 209<br>Task 11: Design/Script the Installation Tests. . . . . . . . . . . . . . . . 209<br>Task 12: Design/Script Other System Test Types . . . . . . . . . . . . 210<br>Step 3: Review/Approve System Tests . . . . . . . . . . . . . . . . . . . . . . . 211<br>Task 1: Schedule/Conduct the Review . . . . . . . . . . . . . . . . . . . . . 211<br>Task 2: Obtain Approvals. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 212<br>Step 4: Execute the System Tests. . . . . . . . . . . . . . . . . . . . . . . . . . . . 212<br>Task 1: Regression Test the System Fixes . . . . . . . . . . . . . . . . . . 212<br>Task 2: Execute the New System Tests. . . . . . . . . . . . . . . . . . . . . 213<br>Task 3: Document the System Defects . . . . . . . . . . . . . . . . . . . . . 213<br>19 Conduct Acceptance Testing. . . . . . . . . . . . . . . . . . . . . . . . . . . . . 215<br>Step 1: Complete Acceptance Test Planning . . . . . . . . . . . . . . . . . . 215<br>Task 1: Finalize the Acceptance Test Types. . . . . . . . . . . . . . . . . 215<br>Task 2: Finalize the Acceptance Test Schedule. . . . . . . . . . . . . . 215<br>Task 3: Organize the Acceptance Test Team . . . . . . . . . . . . . . . . 215<br>Task 4: Establish the Acceptance Test Environment . . . . . . . . . 217<br>Task 5: Install Acceptance Test Tools. . . . . . . . . . . . . . . . . . . . . . 218<br>Step 2: Complete Acceptance Test Cases. . . . . . . . . . . . . . . . . . . . . 218<br>Task 1: Subset the System-Level Test Cases . . . . . . . . . . . . . . . . 218<br>Task 2: Design/Script Additional Acceptance Tests . . . . . . . . . . 219<br>Step 3: Review/Approve Acceptance Test Plan . . . . . . . . . . . . . . . . 219<br>Task 1: Schedule/Conduct the Review . . . . . . . . . . . . . . . . . . . . . 219<br>Task 2: Obtain Approvals. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 220<br>xiii<br><br>Software Testing and Continuous Quality Improvement<br>Step 4: Execute the Acceptance Tests. . . . . . . . . . . . . . . . . . . . . . . . 220<br>Task 1: Regression Test the Acceptance Fixes. . . . . . . . . . . . . . . 220<br>Task 2: Execute the New Acceptance Tests . . . . . . . . . . . . . . . . . 220<br>Task 3: Document the Acceptance Defects . . . . . . . . . . . . . . . . . 221<br>20 Summarize/Report Spiral Test Results. . . . . . . . . . . . . . . . . . . . . 223<br>Step 1: Perform Data Reduction. . . . . . . . . . . . . . . . . . . . . . . . . . . . . 223<br>Task 1: Ensure All Tests Were Executed/Resolved . . . . . . . . . . . 223<br>Task 2: Consolidate Test Defects by Test Number . . . . . . . . . . . 223<br>Task 3: Post Remaining Defects to a Matrix. . . . . . . . . . . . . . . . . 223<br>Step 2: Prepare Final Test Report. . . . . . . . . . . . . . . . . . . . . . . . . . . . 224<br>Task 1: Prepare the Project Overview. . . . . . . . . . . . . . . . . . . . . . 225<br>Task 2: Summarize the Test Activities. . . . . . . . . . . . . . . . . . . . . . 225<br>Task 3: Analyze/Create Metric Graphics. . . . . . . . . . . . . . . . . . . . 225<br>Defects by Function . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 225<br>Defects by Tester . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 227<br>Defect Gap Analysis . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 227<br>Defect Severity Status. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 227<br>Test Burnout Tracking . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 227<br>Root Cause Analysis. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 227<br>Defects by How Found . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 230<br>Defects by Who Found. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 230<br>Functions Tested and Not . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 230<br>System Testing Defect Types. . . . . . . . . . . . . . . . . . . . . . . . . . . 230<br>Acceptance Testing Defect Types. . . . . . . . . . . . . . . . . . . . . . . 232<br>Task 4: Develop Findings/Recommendations . . . . . . . . . . . . . . . 232<br>Step 3: Review/Approve the Final Test Report. . . . . . . . . . . . . . . . . 233<br>Task 1: Schedule/Conduct the Review . . . . . . . . . . . . . . . . . . . . . 233<br>Task 2: Obtain Approvals . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 236<br>Task 3: Publish the Final Test Report . . . . . . . . . . . . . . . . . . . . . . 236<br>SECTION IV TEST PROJECT MANAGEMENT. . . . . . . . . . . . . . . . . . . 237<br>21 Overview of General Project Management . . . . . . . . . . . . . . . . . 239<br>Define the Objectives. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 239<br>Define the Scope of the Project . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 240<br>Identify the Key Activities. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 240<br>Estimate Correctly . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 240<br>Design . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 241<br>Manage People . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 241<br>Leadership . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 242<br>Communication . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 242<br>Solving Problems. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 243<br>Continuous Monitoring. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 243<br>Manage Changes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 243<br>xiv<br><br>Contents<br>22 Test Project Management . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 245<br>Understand the Requirements. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 246<br>Test Planning . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 246<br>Test Execution . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 247<br>Identify and Improve Processes. . . . . . . . . . . . . . . . . . . . . . . . . . . . . 247<br>Essential Characteristics of a Test Project Manager. . . . . . . . . . . . 248<br>Requirement Analysis. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 248<br>Gap Analysis. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 248<br>Lateral Thinking in Developing Test Cases . . . . . . . . . . . . . . . . . 248<br>Avoid Duplication and Repetition. . . . . . . . . . . . . . . . . . . . . . . . . 249<br>Test Data Generation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 249<br>Validate the Test Environment. . . . . . . . . . . . . . . . . . . . . . . . . . . . 249<br>Test to Destroy . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 249<br>Analyze the Test Results . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 249<br>Do Not Hesitate to Accept Help from Others. . . . . . . . . . . . . . . . 250<br>Convey Issues as They Arise . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 250<br>Improve Communication . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 250<br>Always Keep Updating Your Business Knowledge . . . . . . . . . . . 250<br>Learn the New Testing Technologies and Tools . . . . . . . . . . . . . 250<br>Deliver Quality. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 251<br>Improve the Process. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 251<br>Create a Knowledge Base. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 251<br>Repeat the Success. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 251<br>23 Test Estimation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 253<br>Finish-to-Start: (FS) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 255<br>Start-to-Start: (SS) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 255<br>Finish-to-Finish: (FF). . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 255<br>Start-to-Finish (SF). . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 255<br>Critical Activities for Test Estimation . . . . . . . . . . . . . . . . . . . . . . . . 255<br>Test Scope Document. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 256<br>Test Strategy . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 256<br>Test Condition . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 257<br>Test Case . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 257<br>Test Script . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 257<br>Execution/Run Plan. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 257<br>Factors Affecting Test Estimation . . . . . . . . . . . . . . . . . . . . . . . . . . . 257<br>Test Planning Estimation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 258<br>Test Execution and Controlling Effort. . . . . . . . . . . . . . . . . . . . . . . . 259<br>Test Result Analysis. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 259<br>Effort Estimation — Model Project . . . . . . . . . . . . . . . . . . . . . . . . . . 259<br>24 Defect Monitoring and Management Process . . . . . . . . . . . . . . . 263<br>Defect Reporting . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 264<br>Defect Meetings . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 265<br>xv<br><br>Software Testing and Continuous Quality Improvement<br>Defect Classifications. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 265<br>Defect Priority. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 266<br>Defect Category . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 266<br>Defect Metrics . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 267<br>25 Integrating Testing into Development Methodology. . . . . . . . . . 269<br>Step 1. Organize the Test Team . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 270<br>Step 2. Identify Test Steps and Tasks to Integrate. . . . . . . . . . . . . . 270<br>Step 3. Customize Test Steps and Tasks . . . . . . . . . . . . . . . . . . . . . . 271<br>Step 4. Select Integration Points. . . . . . . . . . . . . . . . . . . . . . . . . . . . . 271<br>Step 5. Modify the Development Methodology . . . . . . . . . . . . . . . . 272<br>Step 6. Incorporate Defect Recording . . . . . . . . . . . . . . . . . . . . . . . . 272<br>Step 7. Train in Use of the Test Methodology. . . . . . . . . . . . . . . . . . 272<br>26 On-Site/Offshore Model . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 275<br>Step 1: Analysis. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 275<br>Step 2: Determine the Economic Tradeoffs. . . . . . . . . . . . . . . . . . . . 276<br>Step 3: Determine the Selection Criteria. . . . . . . . . . . . . . . . . . . . . . 276<br>Project Management and Monitoring . . . . . . . . . . . . . . . . . . . . . . . . 276<br>Outsourcing Methodology . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 277<br>On-Site Activities . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 278<br>Offshore Activities. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 278<br>Implementing the On-Site/Offshore Model . . . . . . . . . . . . . . . . . . . . 279<br>Knowledge Transfer . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 279<br>Detailed Design . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 280<br>Milestone-Based Transfer. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 280<br>Steady State . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 280<br>Application Management . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 280<br>Relationship Model . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 281<br>Standards. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 282<br>Benefits of On-Site/Offshore Methodology . . . . . . . . . . . . . . . . . . . . 283<br>On-Site/Offshore Model Challenges. . . . . . . . . . . . . . . . . . . . . . . . 285<br>Out of Sight . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 285<br>Establish Transparency . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 285<br>Security Considerations. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 285<br>Project Monitoring . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 285<br>Management Overhead . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 285<br>Cultural Differences . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 285<br>Software Licensing . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 285<br>The Future of Onshore/Offshore . . . . . . . . . . . . . . . . . . . . . . . . . . . . 286<br>SECTION V MODERN SOFTWARE TESTING TOOLS . . . . . . . . . . . . . 287<br>27 A Brief History of Software Testing . . . . . . . . . . . . . . . . . . . . . . . 289<br>Evolution of Automated Testing Tools . . . . . . . . . . . . . . . . . . . . . . . 293<br>Static Capture/Replay Tools (without Scripting Language). . . . 294<br>Static Capture/Replay Tools (with Scripting Language). . . . . . . 294<br>xvi<br><br>Contents<br>Variable Capture/Replay Tools . . . . . . . . . . . . . . . . . . . . . . . . . . . 295<br>Functional Decomposition Approach . . . . . . . . . . . . . . . . . . . 295<br>Test Plan Driven (“Keyword”) Approach. . . . . . . . . . . . . . . . . 296<br>Historical Software Testing and Development Parallels. . . . . . . . . 298<br>Extreme Programming . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 299<br>28 Software Testing Trends. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 301<br>Automated Capture/Replay Testing Tools . . . . . . . . . . . . . . . . . . . . 301<br>Test Case Builder Tools. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 302<br>Advanced Leading-Edge Automated Testing Tools. . . . . . . . . . . . . 302<br>Advanced Leading-Edge Test Case Builder Tools . . . . . . . . . . . . . . 304<br>Necessary and Sufficient Conditions. . . . . . . . . . . . . . . . . . . . . . . . . 304<br>Test Data/Test Case Generation. . . . . . . . . . . . . . . . . . . . . . . . . . . . . 305<br>Sampling from Production . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 305<br>Starting from Scratch . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 306<br>Seeding the Data . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 306<br>Generating Data Based upon the Database . . . . . . . . . . . . . . . . . 307<br>Generating Test Data/Test Cases Based upon the <br>Requirements. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 308<br>29 Taxonomy of Testing Tools. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 311<br>Testing Tool Selection Checklist . . . . . . . . . . . . . . . . . . . . . . . . . . . . 311<br>Vendor Tool Descriptions. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 312<br>When You Should Consider Test Automation . . . . . . . . . . . . . . . . . 312<br>When You Should NOT Consider Test Automation. . . . . . . . . . . . . 320<br>30 Methodology to Evaluate Automated Testing Tools . . . . . . . . . . 323<br>Step 1: Define Your Test Requirements. . . . . . . . . . . . . . . . . . . . . . . 323<br>Step 2: Set Tool Objectives. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 323<br>Step 3a: Conduct Selection Activities for Informal <br>Procurement. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 324<br>Task 1: Develop the Acquisition Plan . . . . . . . . . . . . . . . . . . . . . . 324<br>Task 2: Define Selection Criteria . . . . . . . . . . . . . . . . . . . . . . . . . . 324<br>Task 3: Identify Candidate Tools . . . . . . . . . . . . . . . . . . . . . . . . . . 324<br>Task 4: Conduct the Candidate Review . . . . . . . . . . . . . . . . . . . . 325<br>Task 5: Score the Candidates. . . . . . . . . . . . . . . . . . . . . . . . . . . . . 325<br>Task 6: Select the Tool . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 325<br>Step 3b: Conduct Selection Activities for Formal <br>Procurement. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 326<br>Task 1: Develop the Acquisition Plan . . . . . . . . . . . . . . . . . . . . . . 326<br>Task 2: Create the Technical Requirements Document . . . . . . . 326<br>Task 3: Review Requirements . . . . . . . . . . . . . . . . . . . . . . . . . . . . 326<br>Task 4: Generate the Request for Proposal . . . . . . . . . . . . . . . . . 326<br>Task 5: Solicit Proposals. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 326<br>Task 6: Perform the Technical Evaluation . . . . . . . . . . . . . . . . . . 327<br>Task 7: Select a Tool Source. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 327<br>xvii<br><br>Software Testing and Continuous Quality Improvement<br>Step 4: Procure the Testing Tool . . . . . . . . . . . . . . . . . . . . . . . . . . . . 327<br>Step 5: Create the Evaluation Plan. . . . . . . . . . . . . . . . . . . . . . . . . . . 327<br>Step 6: Create the Tool Manager’s Plan. . . . . . . . . . . . . . . . . . . . . . . 328<br>Step 7: Create the Training Plan. . . . . . . . . . . . . . . . . . . . . . . . . . . . . 328<br>Step 8: Receive the Tool . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 328<br>Step 9: Perform the Acceptance Test. . . . . . . . . . . . . . . . . . . . . . . . . 329<br>Step 10: Conduct Orientation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 329<br>Step 11: Implement Modifications . . . . . . . . . . . . . . . . . . . . . . . . . . . 329<br>Step 12: Train Tool Users. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 329<br>Step 13: Use the Tool in the Operating Environment. . . . . . . . . . . . 330<br>Step 14: Write the Evaluation Report. . . . . . . . . . . . . . . . . . . . . . . . . 330<br>Step 15: Determine Whether Goals Have Been Met. . . . . . . . . . . . . 330<br>APPENDICES. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 331<br>A Spiral Testing Methodology . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 333<br>B Software Quality Assurance Plan. . . . . . . . . . . . . . . . . . . . . . . . . 343<br>C Requirements Specification . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 345<br>D Change Request Form. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 347<br>E Test Templates. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 349<br>E1: Unit Test Plan . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 349<br>E2: System/Acceptance Test Plan . . . . . . . . . . . . . . . . . . . . . . . . . . . 349<br>E3: Requirements Traceability Matrix. . . . . . . . . . . . . . . . . . . . . . . . 351<br>E4: Test Plan (Client/Server and Internet Spiral Testing). . . . . . . . 353<br>E5: Function/Test Matrix. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 355<br>E6: GUI Component Test Matrix <br>(Client/Server and Internet Spiral Testing). . . . . . . . . . . . . . . . . . . . 355<br>E7: GUI-Based Functional Test Matrix <br>(Client/Server and Internet Spiral Testing). . . . . . . . . . . . . . . . . . . . 356<br>E8: Test Case. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 357<br>E9: Test Case Log . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 357<br>E10: Test Log Summary Report . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 359<br>E11: System Summary Report. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 361<br>E12: Defect Report . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 362<br>E13: Test Schedule . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 364<br>E14: Retest Matrix . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 366<br>E15: Spiral Testing Summary Report <br>(Client/Server and Internet Spiral Testing). . . . . . . . . . . . . . . . . . . . 368<br>E16: Minutes of the Meeting . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 368<br>E17: Test Approvals . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 370<br>E18: Test Execution Plan . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 371<br>E19: Test Project Milestones. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 372<br>E20: PDCA Test Schedule. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 373<br>E21: Test Strategy. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 374<br>xviii<br><br>Contents<br>E22: Clarification Request. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 377<br>E23: Screen Data Mapping. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 378<br>E24: Test Condition versus Test Case . . . . . . . . . . . . . . . . . . . . . . . . 379<br>E25: Project Status Report . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 380<br>E26: Test Defect Details Report . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 381<br>E27: Defect Report. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 383<br>E28: Test Execution Tracking Manager. . . . . . . . . . . . . . . . . . . . . . . 383<br>E29: Final Test Summary Report . . . . . . . . . . . . . . . . . . . . . . . . . . . . 384<br>F Checklists. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 387<br>F1: Requirements Phase Defect Checklist. . . . . . . . . . . . . . . . . . . . . 388<br>F2: Logical Design Phase Defect Checklist . . . . . . . . . . . . . . . . . . . . 389<br>F3: Physical Design Phase Defect Checklist . . . . . . . . . . . . . . . . . . . 390<br>F4: Program Unit Design Phase Defect Checklist. . . . . . . . . . . . . . . 393<br>F5: Coding Phase Defect Checklist. . . . . . . . . . . . . . . . . . . . . . . . . . . 394<br>F6: Field Testing Checklist . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 396<br>F7: Record Testing Checklist . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 398<br>F8: File Test Checklist . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 400<br>F9: Error Testing Checklist . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 401<br>F10: Use Test Checklist . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 403<br>F11: Search Test Checklist . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 404<br>F12: Match/Merge Checklist . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 405<br>F13: Stress Test Checklist . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 407<br>F14: Attributes Testing Checklist. . . . . . . . . . . . . . . . . . . . . . . . . . . . 409<br>F15: States Testing Checklist . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 411<br>F16: Procedures Testing Checklist. . . . . . . . . . . . . . . . . . . . . . . . . . . 412<br>F17: Control Testing Checklist . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 413<br>F18: Control Flow Testing Checklist. . . . . . . . . . . . . . . . . . . . . . . . . . 418<br>F19: Testing Tool Selection Checklist . . . . . . . . . . . . . . . . . . . . . . . . 419<br>F20: Project Information Gathering Checklist . . . . . . . . . . . . . . . . . 421<br>F21: Impact Analysis Checklist. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 423<br>F22: Environment Readiness Checklist. . . . . . . . . . . . . . . . . . . . . . . 425<br>F23: Project Completion Checklist. . . . . . . . . . . . . . . . . . . . . . . . . . . 427<br>F24: Unit Testing Checklist . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 429<br>F25: Ambiguity Review Checklist. . . . . . . . . . . . . . . . . . . . . . . . . . . . 433<br>F26: Architecture Review Checklist. . . . . . . . . . . . . . . . . . . . . . . . . . 435<br>F27: Data Design Review Checklist . . . . . . . . . . . . . . . . . . . . . . . . . . 436<br>F28: Functional Specification Review Checklist. . . . . . . . . . . . . . . . 437<br>F29: Prototype Review Checklist . . . . . . . . . . . . . . . . . . . . . . . . . . . . 442<br>F30: Requirements Review Checklist. . . . . . . . . . . . . . . . . . . . . . . . . 443<br>F31: Technical Design Review Checklist . . . . . . . . . . . . . . . . . . . . . . 447<br>F32: Test Case Preparation Review Checklist. . . . . . . . . . . . . . . . . . 449<br>G Software Testing Techniques . . . . . . . . . . . . . . . . . . . . . . . . . . . . 451<br>G1: Basis Path Testing. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 451<br>PROGRAM: FIELD-COUNT. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 451<br>xix<br><br>Software Testing and Continuous Quality Improvement<br>G2: Black-Box Testing. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 452<br>Extra Program Logic . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 453<br>G3: Bottom-Up Testing. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 453<br>G4: Boundary Value Testing . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 453<br>Numeric Input Data. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 454<br>Field Ranges. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 454<br>Numeric Output Data . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 454<br>Output Range of Values . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 454<br>Nonnumeric Input Data. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 454<br>Tables or Arrays . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 454<br>Number of Items . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 454<br>Nonnumeric Output Data . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 454<br>Tables or Arrays . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 454<br>Number of Outputs. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 454<br>GUI. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 454<br>G5: Branch Coverage Testing . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 455<br>PROGRAM: FIELD-COUNT. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 455<br>G6: Branch/Condition Coverage Testing. . . . . . . . . . . . . . . . . . . . . . 455<br>PROGRAM: FIELD-COUNT. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 456<br>G7: Cause-Effect Graphing. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 456<br>Cause-Effect Methodology . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 457<br>Specification. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 458<br>Causes. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 458<br>Effects. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 458<br>G8: Condition Coverage. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 460<br>PROGRAM: FIELD-COUNT. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 460<br>G9: CRUD Testing . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 461<br>G10: Database Testing . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 461<br>Integrity Testing. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 461<br>Entity Integrity. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 462<br>Primary Key Integrity. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 462<br>Column Key Integrity . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 462<br>Domain Integrity . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 463<br>User-Defined Integrity. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 463<br>Referential Integrity . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 463<br>Data Modeling Essentials . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 464<br>What Is a Model?. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 465<br>Why Do We Create Models?. . . . . . . . . . . . . . . . . . . . . . . . . . . . 465<br>Tables — A Definition . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 466<br>Table Names . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 467<br>Columns . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 467<br>Rows. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 467<br>Order. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 467<br>Entities — A Definition . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 467<br>xx<br><br>Contents<br>Identification — Primary Key . . . . . . . . . . . . . . . . . . . . . . . . . . . . 468<br>Compound Primary Keys. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 468<br>Null Values. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 468<br>Identifying Entities . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 469<br>Entity Classes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 469<br>Relationships — A Definition. . . . . . . . . . . . . . . . . . . . . . . . . . . . . 470<br>Relationship Types. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 470<br>One-to-One. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 470<br>One-to-Many . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 472<br>Many-to-Many . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 473<br>Multiple Relationships. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 475<br>Entities versus Relationships . . . . . . . . . . . . . . . . . . . . . . . . . . 475<br>Attributes — A Definition. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 476<br>Domain . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 477<br>Domain Names. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 478<br>Attributes versus Relationships. . . . . . . . . . . . . . . . . . . . . . . . 478<br>Normalization — What Is It? . . . . . . . . . . . . . . . . . . . . . . . . . . . 479<br>Problems of Unnormalized Entities . . . . . . . . . . . . . . . . . . . . . 479<br>Steps in Normalization . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 480<br>First Normal Form (1NF) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 480<br>Second Normal Form (2NF). . . . . . . . . . . . . . . . . . . . . . . . . . . . 482<br>Third Normal Form (3NF) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 484<br>Model Refinement. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 485<br>Entity Subtypes. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 486<br>A Definition . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 486<br>Referential Integrity . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 486<br>Dependency Constraints . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 488<br>Constraint Rule. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 488<br>Recursion. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 489<br>Using the Model in Database Design . . . . . . . . . . . . . . . . . . . . 491<br>Relational Design . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 491<br>G11: Decision Tables . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 492<br>PROGRAM: FIELD-COUNT. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 492<br>G12: Desk Checking . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 493<br>G13: Equivalence Partitioning . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 493<br>Numeric Input Data. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 494<br>Field Ranges. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 494<br>Numeric Output Data . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 494<br>Output Range of Values . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 494<br>Nonnumeric Input Data . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 494<br>Tables or Arrays . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 494<br>Number of Items. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 494<br>Nonnumeric Output Data. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 494<br>Tables or Arrays . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 494<br>Number of Outputs. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 494<br>xxi<br><br>Software Testing and Continuous Quality Improvement<br>G14: Exception Testing . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 494<br>G15: Free Form Testing . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 494<br>G16: Gray-Box Testing . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 495<br>G17: Histograms . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 496<br>G18: Inspections. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 496<br>G19: JADs. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 497<br>G20: Orthogonal Array Testing. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 498<br>G21: Pareto Analysis . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 499<br>G22: Positive and Negative Testing . . . . . . . . . . . . . . . . . . . . . . . . . . 501<br>G23: Prior Defect History Testing. . . . . . . . . . . . . . . . . . . . . . . . . . . . 502<br>G24: Prototyping. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 502<br>Cyclic Models. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 502<br>Fourth-Generation Languages and Prototyping. . . . . . . . . . . . . . 503<br>Iterative Development Accounting . . . . . . . . . . . . . . . . . . . . . . . . 504<br>Evolutionary and Throwaway . . . . . . . . . . . . . . . . . . . . . . . . . . . . 504<br>Application Prototyping . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 505<br>Prototype Systems Development . . . . . . . . . . . . . . . . . . . . . . . . . 505<br>Data-Driven Prototyping. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 505<br>Replacement of the Traditional Life Cycle. . . . . . . . . . . . . . . . . . 506<br>Early-Stage Prototyping . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 506<br>User Software Engineering . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 507<br>G25: Random Testing. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 507<br>G26: Range Testing. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 507<br>G27: Regression Testing. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 509<br>G28: Risk-Based Testing. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 509<br>G29: Run Charts . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 510<br>G30: Sandwich Testing. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 510<br>G31: Statement Coverage Testing. . . . . . . . . . . . . . . . . . . . . . . . . . . . 511<br>PROGRAM: FIELD-COUNT. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 511<br>G32: State Transition Testing . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 511<br>PROGRAM: FIELD-COUNT. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 512<br>G33: Statistical Profile Testing . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 512<br>G34: Structured Walkthroughs . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 512<br>G35: Syntax Testing . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 514<br>G36: Table Testing . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 514<br>G37: Thread Testing. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 515<br>G38: Top-Down Testing . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 515<br>G39: White-Box Testing . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 516<br>Bibliography. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 517<br>Glossary . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 523<br>Index. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 529

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值