Software error detection through testing and analysis / J.C. Huang.

By: Huang, J. C, 1935- [author.]
Language: English Publisher: Hoboken, New Jersey : John Wiley & Sons, Inc. c2009Description: 1 online resource (350 pages)Content type: text Media type: computer Carrier type: online resourceISBN: 9780470404447; 9780470464076 (ebook)Subject(s): Computer software -- Testing | Computer software -- Reliability | Debugging in computer scienceGenre/Form: Electronic books.DDC classification: 005.14 LOC classification: QA76.76.T48 | H72 2009Online resources: Full text available at Wiley Online Library Click here to view
Contents:
Preface. 1 Concepts, Notation, and Principles. 1.1 Concepts, Terminology, and Notation. 1.2 Two Principles of Test-Case Selection. 1.3 Classification of Faults. 1.4 Classification of Test-Case Selection Methods. 1.5 The Cost of Program Testing. 2 Code-Based Test-Case Selection Methods. 2.1 Path Testing. 2.2 Statement Testing. 2.3 Branch Testing. 2.4 Howden’s and McCabe’s Methods. 2.5 Data-Flow Testing. 2.6 Domain-Strategy Testing. 2.7 Program Mutation and Fault Seeding. 2.8 Discussion. Exercises. 3 Specification-Based Test-Case Selection Methods. 3.1 Subfunction Testing. 3.2 Predicate Testing. 3.3 Boundary-Value Analysis. 3.4 Error Guessing. 3.5 Discussion. Exercises. 4 Software Testing Roundup. 4.1 Ideal Test Sets. 4.2 Operational Testing. 4.3 Integration Testing. 4.4 Testing Object-Oriented Programs. 4.5 Regression Testing. 4.6 Criteria for Stopping a Test. 4.7 Choosing a Test-Case Selection Criterion. Exercises. 5 Analysis of Symbolic Traces. 5.1 Symbolic Trace and Program Graph. 5.2 The Concept of a State Constraint. 5.3 Rules for Moving and Simplifying Constraints. 5.4 Rules for Moving and Simplifying Statements. 5.5 Discussion. 5.6 Supporting Software Tool. Exercises. 6 Static Analysis. 6.1 Data-Flow Anomaly Detection. 6.2 Symbolic Evaluation (Execution). 6.3 Program Slicing. 6.4 Code Inspection. 6.5 Proving Programs Correct. Exercises. 7 Program Instrumentation. 7.1 Test-Coverage Measurement. 7.2 Test-Case Effectiveness Assessment. 7.3 Instrumenting Programs for Assertion Checking. 7.4 Instrumenting Programs for Data-Flow-Anomaly Detection. 7.5 Instrumenting Programs for Trace-Subprogram Generation. Exercises. Appendix A: Logico-Mathematical Background. Appendix B: Glossary. Appendix C: Questions for Self-Assessment. Bibliography. Index.
Summary: An in-depth review of key techniques in software error detection Software error detection is one of the most challenging problems in software engineering. Now, you can learn how to make the most of software testing by selecting test cases to maximize the probability of revealing latent errors. Software Error Detection through Testing and Analysis begins with a thorough discussion of test-case selection and a review of the concepts, notations, and principles used in the book. Next, it covers: Code-based test-case selection methods Specification-based test-case selection methods Additional advanced topics in testing Analysis of symbolic trace Static analysis Program instrumentation Each chapter begins with a clear introduction and ends with exercises for readers to test their understanding of the material. Plus, appendices provide a logico-mathematical background, glossary, and questions for self-assessment. Assuming a basic background in software quality assurance and an ability to write nontrivial programs, the book is free of programming languages and paradigms used to construct the program under test. Software Error Detection through Testing and Analysis is suitable as a professional reference for software testing specialists, software engineers, software developers, and software programmers. It is also appropriate as a textbook for software engineering, software testing, and software quality assurance courses at the advanced undergraduate and graduate levels.
Tags from this library: No tags from this library for this title. Log in to add tags.
    Average rating: 0.0 (0 votes)
Item type Current location Home library Call number Status Date due Barcode Item holds
EBOOK EBOOK COLLEGE LIBRARY
COLLEGE LIBRARY
LIC Gateway
005.14 H8604 2009 (Browse shelf) Available CL-50646
Total holds: 0

ABOUT THE AUTHOR
J. C. Huang is Professor Emeritus in the Department of Computer Science at the University of Houston. Professor Huang's areas of research include software engineering, program analysis and testing, software tools, real-time systems, software design, and system architecture.

Includes bibliographical references (p. 237-251) and index.

Preface.
1 Concepts, Notation, and Principles.

1.1 Concepts, Terminology, and Notation.

1.2 Two Principles of Test-Case Selection.

1.3 Classification of Faults.

1.4 Classification of Test-Case Selection Methods.

1.5 The Cost of Program Testing.

2 Code-Based Test-Case Selection Methods.

2.1 Path Testing.

2.2 Statement Testing.

2.3 Branch Testing.

2.4 Howden’s and McCabe’s Methods.

2.5 Data-Flow Testing.

2.6 Domain-Strategy Testing.

2.7 Program Mutation and Fault Seeding.

2.8 Discussion.

Exercises.

3 Specification-Based Test-Case Selection Methods.

3.1 Subfunction Testing.

3.2 Predicate Testing.

3.3 Boundary-Value Analysis.

3.4 Error Guessing.

3.5 Discussion.

Exercises.

4 Software Testing Roundup.

4.1 Ideal Test Sets.

4.2 Operational Testing.

4.3 Integration Testing.

4.4 Testing Object-Oriented Programs.

4.5 Regression Testing.

4.6 Criteria for Stopping a Test.

4.7 Choosing a Test-Case Selection Criterion.

Exercises.

5 Analysis of Symbolic Traces.

5.1 Symbolic Trace and Program Graph.

5.2 The Concept of a State Constraint.

5.3 Rules for Moving and Simplifying Constraints.

5.4 Rules for Moving and Simplifying Statements.

5.5 Discussion.

5.6 Supporting Software Tool.

Exercises.

6 Static Analysis.

6.1 Data-Flow Anomaly Detection.

6.2 Symbolic Evaluation (Execution).

6.3 Program Slicing.

6.4 Code Inspection.

6.5 Proving Programs Correct.

Exercises.

7 Program Instrumentation.

7.1 Test-Coverage Measurement.

7.2 Test-Case Effectiveness Assessment.

7.3 Instrumenting Programs for Assertion Checking.

7.4 Instrumenting Programs for Data-Flow-Anomaly Detection.

7.5 Instrumenting Programs for Trace-Subprogram Generation.

Exercises.

Appendix A: Logico-Mathematical Background.

Appendix B: Glossary.

Appendix C: Questions for Self-Assessment.

Bibliography.

Index.

An in-depth review of key techniques in software error detection
Software error detection is one of the most challenging problems in software engineering. Now, you can learn how to make the most of software testing by selecting test cases to maximize the probability of revealing latent errors. Software Error Detection through Testing and Analysis begins with a thorough discussion of test-case selection and a review of the concepts, notations, and principles used in the book. Next, it covers:

Code-based test-case selection methods
Specification-based test-case selection methods
Additional advanced topics in testing
Analysis of symbolic trace
Static analysis
Program instrumentation
Each chapter begins with a clear introduction and ends with exercises for readers to test their understanding of the material. Plus, appendices provide a logico-mathematical background, glossary, and questions for self-assessment. Assuming a basic background in software quality assurance and an ability to write nontrivial programs, the book is free of programming languages and paradigms used to construct the program under test.

Software Error Detection through Testing and Analysis is suitable as a professional reference for software testing specialists, software engineers, software developers, and software programmers. It is also appropriate as a textbook for software engineering, software testing, and software quality assurance courses at the advanced undergraduate and graduate levels.

000-099 005

There are no comments for this item.

to post a comment.