Muutke küpsiste eelistusi

Software Error Detection through Testing and Analysis [Kõva köide]

(University of Houston)
  • Formaat: Hardback, 272 pages, kõrgus x laius x paksus: 243x163x20 mm, kaal: 499 g
  • Ilmumisaeg: 05-Jun-2009
  • Kirjastus: John Wiley & Sons Inc
  • ISBN-10: 0470404442
  • ISBN-13: 9780470404447
Teised raamatud teemal:
  • Formaat: Hardback, 272 pages, kõrgus x laius x paksus: 243x163x20 mm, kaal: 499 g
  • Ilmumisaeg: 05-Jun-2009
  • Kirjastus: John Wiley & Sons Inc
  • ISBN-10: 0470404442
  • ISBN-13: 9780470404447
Teised raamatud teemal:
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.

Preface ix
Concepts, Notation, and Principles
1(13)
Concepts, Terminology, and Notation
4(4)
Two Principles of Test-Case Selection
8(2)
Classification of Faults
10(1)
Classification of Test-Case Selection Methods
11(1)
The Cost of Program Testing
12(2)
Code-Based Test-Case Selection Methods
14(39)
Path Testing
16(1)
Statement Testing
17(4)
Branch Testing
21(2)
Howden's and McCabe's Methods
23(3)
Data-Flow Testing
26(10)
Domain-Strategy Testing
36(3)
Program Mutation and Fault Seeding
39(7)
Discussion
46(7)
Exercises
51(2)
Specification-Based Test-Case Selection Methods
53(23)
Subfunction Testing
55(13)
Predicate Testing
68(2)
Boundary-Value Analysis
70(1)
Error Guessing
71(1)
Discussion
72(4)
Exercises
73(3)
Software Testing Roundup
76(18)
Ideal Test Sets
77(3)
Operational Testing
80(2)
Integration Testing
82(2)
Testing Object-Oriented Programs
84(4)
Regression Testing
88(1)
Criteria for Stopping a Test
88(2)
Choosing a Test-Case Selection Criterion
90(4)
Exercises
93(1)
Analysis of Symbolic Traces
94(38)
Symbolic Trace and Program Graph
94(2)
The Concept of a State Constraint
96(3)
Rules for Moving and Simplifying Constraints
99(11)
Rules for Moving and Simplifying Statements
110(4)
Discussion
114(12)
Supporting Software Tool
126(6)
Exercises
131(1)
Static Analysis
132(31)
Data-Flow Anomaly Detection
134(3)
Symbolic Evaluation (Execution)
137(4)
Program Slicing
141(5)
Code Inspection
146(6)
Proving Programs Correct
152(11)
Exercises
161(2)
Program Instrumentation
163(31)
Test-Coverage Measurement
164(1)
Test-Case Effectiveness Assessment
165(1)
Instrumenting Programs for Assertion Checking
166(3)
Instrumenting Programs for Data-Flow-Anomaly Detection
169(12)
Instrumenting Programs for Trace-Subprogram Generation
181(13)
Exercises
192(2)
Appendix A: Logico-Mathematical Background 194(19)
Appendix B: Glossary 213(7)
Appendix C: Questions for Self-Assessment 220(17)
Bibliography 237(16)
Index 253
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.