Effective Methods for Software Testing, 3/e
William E. Perry
- Written by the founder and executive director of the Quality Assurance Institute, which sponsors the most widely accepted certification program for software testing
- Software testing is a weak spot for most developers, and many have no system in place to find and correct defects quickly and efficiently
- This comprehensive resource provides step-by-step guidelines, checklists, and templates for each testing activity, as well as a self-assessment that helps readers identify the sections of the book that respond to their individual needs
- Covers the latest regulatory developments affecting software testing, including Sarbanes-Oxley Section 404, and provides guidelines for agile testing and testing for security, internal controls, and data warehouses
- CD-ROM with all checklists and templates saves testers countless hours of developing their own test documentation
- Note: CD-ROM/DVD and other supplementary materials are not included as part of eBook file.
Table of Contents
Part I: Assessing Testing Capabilities and Competencies.
Chapter 1: Assessing Capabilities, Staff Competency, and User Satisfaction.
The Three-Step Process to Becoming a World-Class Testing Organization.
Step 1: Define a World-Class Software Testing Model.
Step 2: Develop Baselines for Your Organization.
Assessment 1: Assessing the Test Environment.
Assessment 2: Assessing the Capabilities of Your Existing.Test Processes.
Assessment 3: Assessing the Competency of Your Testers.
Step 3: Develop an Improvement Plan.
Part II: Building a Software Testing Environment.
Chapter 2: Creating an Environment Supportive of Software Testing.
Chapter 3: Building the Software Testing Process.
Software Testing Guidelines.
Guideline #1: Testing Should Reduce Software Development.
Guideline #2: Testing Should Be Performed Effectively.
Guideline #3: Testing Should Uncover Defects.
Guideline #4: Testing Should Be Performed Using Business Logic.
Guideline #5: Testing Should Occur Throughout the Development Life Cycle.
Guideline #6: Testing Should Test Both Function and Structure.
Chapter 4: Selecting and Installing Software Testing Tools.
Chapter 5: Building Software Tester Competency.
Part III: The Seven-Step Testing Process.
Chapter 6: Overview of the Software Testing Process.
Chapter 7: Step 1: Organizing for Testing.
Task 1: Appoint the Test Manager.
Task 2: Define the Scope of Testing.
Task 3: Appoint the Test Team.
Task 4: Verify the Development Documentation.
Task 5: Validate the Test Estimate and Project Status.
Chapter 8: Step 2: Developing the Test Plan.
Task 1: Profile the Software Project.
Task 2: Understand the Project Risks.
Task 3: Select a Testing Technique.
Task 4: Plan Unit Testing and Analysis.
Task 5: Build the Test Plan.
Task 6: Inspect the Test Plan.
Chapter 9: Step 3: Verification Testing.
Task 1: Test During the Requirements Phase.
Task 2: Test During the Design Phase.
Task 3: Test During the Programming Phase.
Chapter 10: Step 4: Validation Testing.
Task 1: Build the Test Data.
Task 2: Execute Tests.
Task 3: Record Test Results.
Chapter 11: Step 5: Analyzing and Reporting Test Results.
Task 1: Report Software Status.
Task 2: Report Interim Test Results.
Task 3: Report Final Test Results.
Chapter 12: Step 6: Acceptance and Operational Testing.
Task 1: Acceptance Testing.
Task 2: Pre-Operational Testing.
Task 3: Post-Operational Testing.
Chapter 13: Step 7: Post-Implementation Analysis.
Task 1: Establish Assessment Objectives.
Task 2: Identify What to Measure.
Task 3: Assign Measurement Responsibility.
Task 4: Select Evaluation Approach.
Task 5: Identify Needed Facts.
Task 6: Collect Evaluation Data.
Task 7: Assess the Effectiveness of Testing.
Part IV: Incorporating Specialized Testing Responsibilities.
Chapter 14: Software Development Methodologies.
Chapter 15: Testing Client/Server Systems.
Task 1: Assess Readiness.
Task 2: Assess Key Components.
Task 3: Assess Client Needs.
Chapter 16: Rapid Application Development Testing.
Task 1: Determine Appropriateness of RAD.
Task 2: Test Planning Iterations.
Task 3: Test Subsequent Planning Iterations.
Task 4: Test the Final Planning Iteration.
Chapter 17: Testing Internal Controls.
Task 1: Understand the System Being Tested.
Task 2: Identify Risks.
Task 3: Review Application Controls.
Task 4: Test Application Controls.
Task 5: Document Control Strengths and Weaknesses.
Chapter 18: Testing COTS and Contracted Software.
Task 1: Test Business Fit.
Step 1: Testing Needs Specification.
Step 2: Testing CSFs.
Task 2: Test Operational Fit.
Step 1: Test Compatibility.
Step 2: Integrate the Software into Existing Work Flows.
Step 3: Demonstrate the Software in Action.
Task 3: Test People Fit.
Task 4: Acceptance-Test the Software Process.
Step 1: Create Functional Test Conditions.
Step 2: Create Structural Test Conditions.
Chapter 19: Testing in a Multiplatform Environment.
Task 1: Define Platform Configuration Concerns.
Task 2: List Needed Platform Configurations.
Task 3: Assess Test Room Configurations.
Task 4: List Structural Components Affected by the Platform(s).
Task 5: List Interfaces the Platform Affects.
Task 6: Execute the Tests.
Chapter 20: Testing Software System Security.
Task 1: Establish a Security Baseline.
Chapter 21: Testing a Data Warehouse.
Task 1: Measure the Magnitude of Data Warehouse Concerns.
Task 2: Identify Data Warehouse Activity Processes to Test.
Chapter 22: Testing Web-Based Systems.
Task 1: Select Web-Based Risks to Include in the Test Plan.
Task 2: Select Web-Based Tests.
Task 3: Select Web-Based Test Tools.
Task 4: Test Web-Based Systems.
Part V: Building Agility into the Testing Process.
Chapter 23: Using Agile Methods to Improve Software Testing.
Chapter 24: Building Agility into the Testing Process.
Step 1: Measure Software Process Variability.
Step 2: Maximize Best Practices.
Step 3: Build on Strength, Minimize Weakness.
Step 4: Identify and Address Improvement Barriers.
Step 5: Identify and Address Cultural and Communication.
Culture 1: Manage People.
Culture 2: Manage by Process.
Culture 3: Manage Competencies.
Culture 4: Manage by Fact.
Culture 5: Manage Business Innovation.
Step 6: Identify Implementable Improvements.
Step 7: Develop and Execute an Implementation Plan.