Primary course 
SWE 637 (Software Testing) 

Primary textbook 
Ammann and Offutt, "Introduction to Software Testing," Edition 2, Cambridge University Press (2017), ISBN-13: 978-1107172012. See the book website for more information. Contact the authors for updated information. 

Topic Description Readings 
Introduction and Overview  Overview of Software Testing  Chapters 1-5
Graph Coverage  Graph coverage criteria; creating graphs from source code, design elements, specifications, and use cases; representing graphs algebraically  Chapter 7
Logic Testing  Logic expression coverage criteria; Structural logic coverage of programs; Specification-based logic coverage; Logic coverage of finite state machines; Disjunctive normal form criteria  Chapter 8
Input Space Partitioning  Input domain modeling; Combination strategies criteria; Constraints among partitions  Chapter 6
Syntax-Based Testing  Syntax-based coverage criteria; Program-based grammars; Integration and object-oriented testing; Specification-based grammars; Input space grammars  Chapter 9