Software Testing and Quality Assurance: Theory and Practice / Edition 1

Software Testing and Quality Assurance: Theory and Practice / Edition 1

by Kshirasagar Naik, Priyadarshi Tripathy
     
 

View All Available Formats & Editions

ISBN-10: 0471789119

ISBN-13: 9780471789116

Pub. Date: 08/18/2008

Publisher: Wiley

A superior primer on software testing and quality assurance, from integration to execution and automation

This important new work fills the pressing need for a user-friendly text that aims to provide software engineers, software quality professionals, software developers, and students with the fundamental developments in testing theory and common testing

Overview

A superior primer on software testing and quality assurance, from integration to execution and automation

This important new work fills the pressing need for a user-friendly text that aims to provide software engineers, software quality professionals, software developers, and students with the fundamental developments in testing theory and common testing practices.

Software Testing and Quality Assurance: Theory and Practice equips readers with a solid understanding of:

  • Practices that support the production of quality software
  • Software testing techniques
  • Life-cycle models for requirements, defects, test cases, and test results
  • Process models for units, integration, system, and acceptance testing
  • How to build test teams, including recruiting and retaining test engineers
  • Quality Models, Capability Maturity Model, Testing Maturity Model, and Test Process Improvement Model

Expertly balancing theory with practice, and complemented with an abundance of pedagogical tools, including test questions, examples, teaching suggestions, and chapter summaries, this book is a valuable, self-contained tool for professionals and an ideal introductory text for courses in software testing, quality assurance, and software engineering.

Product Details

ISBN-13:
9780471789116
Publisher:
Wiley
Publication date:
08/18/2008
Series:
Wiley Desktop Editions Series
Edition description:
New Edition
Pages:
648
Sales rank:
807,467
Product dimensions:
6.40(w) x 9.30(h) x 1.50(d)

Table of Contents

Preface.

List of Figures.

List of Tables.

CHAPTER 1: BASIC CONCEPTS AND PRELIMINARIES.

1.1 Quality Revolution.

1.2 Software Quality.

1.3 Role of Testing.

1.4 Verification and Validation.

1.5 Failure, Error, Fault, and Defect.

1.6 Notion of Software Reliability.

1.7 Objectives of Testing.

1.8 What Is a Test Case?

1.9 Expected Outcome.

1.10 Concept of Complete Testing.

1.11 Central Issue in Testing.

1.12 Testing Activities.

1.13 Test Levels.

1.14 Sources of Information for Test Case Studies.

1.15 White-Box and Black-Box Testing.

1.16 Test Planning and Design.

1.17 Monitoring and Measuring Test Execution.

1.18 Test Tools and Automation.

1.19 Test Team Organization and Management.

1.20 Outline of Book.

References.

Exercises.

CHAPTER 2: THEORY OF PROGRAM TESTING.

2.1 Basic Concepts in Testing Theory.

2.2 Theory of Goodenough and Gerhart.

2.3 Theory of Weyuker and Ostrand.

2.4 Theory of Gourlay.

2.5 Adequacy of Testing.

2.6 Limitations of Testing.

2.7 Summary.

Literature Review.

References.

Exercises.

CHAPTER 3: UNIT TESTING.

3.1 Concept of Unit Testing.

3.2 Static Unit Testing.

3.3 Defect Prevention.

3.4 Dynamic Unit Testing.

3.5 Mutation Testing.

3.6 Debugging.

3.7 Unit Testing in extreme Programming.

3.8 JUnit: Framework for Unit Testing.

3.9 Tools for Unit Testing.

3.10 Summary.

Literature Review.

References.

Exercises.

CHAPTER 4: CONTROL FLOW TESTING.

4.1 Basic Idea.

4.2 Outline of Control Flow Testing.

4.3 Control Flow Graph.

4.4 Paths in a Control Flow Chart.

4.5 Path Selection Criteria.

4.6 Generating Test Input.

4.7 Examples of Test Data Selection.

4.8 Containing Infeasible Paths.

4.9 Summary.

Literature Review.

References.

Exercises.

CHAPTER 5: DATA FLOW TESTING.

5.1 General Idea.

5.2 Data flow Anomaly.

5.3 Overview of Dynamic Data flow Testing.

5.4 Data Flow Graph.

5.5 Data Flow Terms.

5.6 Data Flow Testing Criteria.

5.7 Comparison of Data Flow Test Selection Criteria.

5.8 Feasible Paths and Test Selection Criteria.

5.9 Comparison of Testing Techniques.

5.10 Summary.

Literature Review.

References.

Exercises.

CHAPTER 6: DOMAIN TESTING.

6.1 Domain Error.

6.2 Testing for Domain Errors.

6.3 Sources of Domain.

6.4 Types of Domain Errors.

6.5 ON and OFF Points.

6.6 Test Selection Criterion.

6.7 Summary.

Literature Review.

References.

Exercises.

CHAPTER 7: SYSTEM INTEGRATION.

7.1 Concept of Integration Testing.

7.2 Different Types of Interfaces and Interface Errors.

7.3 Granularity of System Integration Testing.

7.4 System Integration Techniques.

7.5 Software and Hardware Integration.

7.6 Test Plan for System Integration.

7.7 Off-the Shelf Component Integration.

7.8 Summary.

Literature Review.

References.

Exercises.

CHAPTER 8: SYSTEM TEST CATEGORIES.

8.1 Taxonomy of System Tests.

8.2 Basic Tests.

8.3 Functionality Tests.

8.4 Robustness Tests.

8.5 Interoperability Tests.

8.6 Performance Tests.

8.7 Scalability Tests.

8.8 Stress Tests.

8.9 Load and Stability Tests.

8.10 Reliability Tests.

8.11 Regression Tests.

8.12 Documentation Tests.

8.13 Regulatory Tests.

8.14 Summary.

Literature Review.

References.

Exercises.

CHAPTER 9: FUNCTIONAL TESTING.

9.1 Functional Testing Concepts of Howden.

9.2 Complexity of Applying Functional Testing.

9.3 Pairwise Testing.

9.4 Equivalence Class Partitioning.

9.5 Boundary Value Analysis.

9.6 Decision Tables.

9.7 Random Testing.

9.8 Error Guessing.

9.9 Category Partition.

9.10 Summary.

Literature review.

References.

Exercises.

CHAPTER 10: TEST GENERATION FROM FSM MODELS.

10.1 State-Oriented Model.

10.2 Points of Control and Observation.

10.3 Finite-State Machine.

10.4 Test Generation from an FSM.

10.5 Transition Tour Method.

10.6 Testing with State Verification.

10.7 Unique Input-Output Sequence.

10.8 Distinguishing Sequence.

10.9 Characterizing Sequence.

10.10 Test Architecture.

10.11 Testing and Test Control Notation Version 3 (TTCN-3).

10.12 Extended FSMs.

10.13 Test Generation from EFSM Models.

10.14 Additional Coverage Criteria for System Testing.

10.15 Summary.

Literature review.

References.

Exercises.

CHAPTER 11: SYSTEM TEST DESIGN.

11.1 Test Design Factors.

11.2 Requirement Identification.

11.3 Characteristics of Testable Requirements.

11.4 Test Objective Identification.

11.5 Example.

11.6 Modeling a Test Design Process.

11.7 Modeling Test Results.

11.8 Test Design Preparedness Metrics.

11.9 Test Case Design Effectiveness.

11.10 Summary.

Literature Review.

References.

Exercises.

CHAPTER 12: SYSTEM TEST PLANNING AND AUTOMATION.

12.1 Structure of a System Test Plan.

12.2 Introduction and Feature Description.

12.3 Assumption.

12.4 Test Approach.

12.5 Test Suite Structure.

12.6 Test Environment.

12.7 Test Execution Strategy.

12.8 Test Effort Estimation.

12.9 Scheduling and Test Milestones.

12.10 System Test Automation.

12.11 Evaluation and Selection of Test Automation Tools.

12.12 Test Selection Guidelines for Automation.

12.13 Characteristics of Automated Test Cases.

12.14 Structure of an Automated Test Case.

12.15 Test Automation Infrastructure.

12.16 Summary.

Literature Review.

References.

Exercises.

CHAPTER 13: SYSTEM TEST EXECUTION.

13.1 Basic Ideas.

13.2 Modeling Defects.

13.3 Preparedness to Start System Testing.

13.4 Metrics for Tracking System Test.

13.5 Orthogonal Defect Classification.

13.6 Defect Causal Analysis.

13.7 Beta Testing.

13.8 First Customer Shipment.

13.9 System Test Report.

13.10 Product Sustaining.

13.11 Measuring Test Effectiveness.

13.12 Summary.

Literature Review.

References.

Exercises.

CHAPTER 14: ACCEPTANCE TESTING.

14.1 Types of Acceptance Testing.

14.2 Acceptance Criteria.

14.3 Selection of Acceptance Criteria.

14.4 Acceptance Test Plan.

14.5 Acceptance Test Execution.

14.6 Acceptance Test Report.

14.7 Acceptance Testing in extreme Programming.

14.8 Summary.

Literature Review.

References.

Exercises.

CHAPTER 15: SOFTWARE RELIABILTY.

15.1 What is Reliability?

15.2 Definitions of Software Reliability.

15.3 Factors Influencing Software Reliability.

15.4 Applications of Software Reliability.

15.5 Operational Profiles.

15.6 Reliability Models.

15.7 Summary.

Literature Review.

References.

Exercises.

CHAPTER 16: TEST TEAM ORGANIZATION.

16.1 Test Groups.

16.2 Software Quality Assurance Group.

16.3 System Test Team Hierarchy.

16.4 Effective Staffing of Test Engineers.

16.5 Recruiting Test Engineers.

16.6 Retaining Test Engineers.

16.7 Team Building.

16.8 Summary.

Literature Review.

References.

Exercises.

CHAPTER 17: SOFTWARE QUALITY.

17.1 Five Views of Software Quality.

17.2 McCall’s Quality Factors and Criteria.

17.3 ISO 9126 Quality Characteristics.

17.4 ISO 9000:2000 Software Quality Standard.

17.5 Summary.

Literature Review.

References.

Exercises.

CHAPTER 18: MATURITY MODELS.

18.1 Basic Idea in Software Process.

18.2 Capability Maturity Models.

18.3 Test Process Improvement.

18.4 Testing Maturity Model.

18.5 Summary.

Literature Review.

References.

Exercises.

GLOSSARY.

INDEX.

Customer Reviews

Average Review:

Write a Review

and post it to your social network

     

Most Helpful Customer Reviews

See all customer reviews >