Model-Based Software Testing and Analysis with C#
This book teaches model-based analysis and model-based testing, with important new ways to write and analyze software specifications and designs, generate test cases, and check the results of test runs. These methods increase the automation in each of these steps, making them more timely, more thorough, and more effective. Using a familiar programming language, testers and analysts will learn to write models that describe how a program is supposed to behave. The authors work through several realistic case studies in depth and detail, using a toolkit built on the C# language and the .NET framework. Readers can also apply the methods in analyzing and testing systems in many other languages and frameworks. Intended for professional software developers including testers, and for university students, this book is suitable for courses on software engineering, testing, specification, or applications of formal methods.
- Works through several realistic case studies in depth and detail
- Methods developed at Microsoft Research and used by Microsoft product groups
- Source code for tools available on the web
Product details
January 2008Hardback
9780521886550
366 pages
240 × 182 × 21 mm
0.74kg
2 tables 43 exercises
Temporarily unavailable - available from March 2023
Table of Contents
- Part I. Overview:
- 1. Describe, analyze, test
- 2. Why we need model-based testing
- 3. Why we need model-based analysis
- 4. Further reading
- Part II. Systems with Finite Models:
- 5. Model programs
- 6. Exploring and analyzing finite models
- 7. Structuring model programs with features and composition
- 8. Testing closed systems
- 9. Further reading
- Part III. Systems with Complex States:
- 10. Modeling systems with structured state
- 11. Analyzing systems with complex state
- 12. Testing systems with complex state
- 13. Further reading
- Part IV. Advanced Topics:
- 14. Compositional modeling
- 15. Modeling objects
- 16. Reactive systems
- 17. Further reading
- Part V. Appendices: A. Modeling library reference
- B. Command reference
- C. Glossary
- D. Index.