Objectives

  • To understand the concepts of black-box , white-box and gray box testing
  • To understand the concept of test coverage and test adequacy.
  • To understand automated test case generation.
  • To understand property-based testing.
  • To understand mutation-based testing.
  • To understand fault localization.
  • To understand automated program repair.
  • To use software testing tools and frameworks.

Program

  • Black/White/Gray Box Testing
  • Testing Layers
  • Unit, Integration, Regression, Beta and Acceptance Testing
  • Test Coverage and Test Adequacy
  • Paths, Statements, Conditions Coverage
  • Automated Test Case Generation
  • Property-Based Testing
  • Model-Based Testing
  • Mutation-based Testing
  • Gamification in Software Testing
  • Mobile and Web-Based Testing
  • Fault Localization
  • Coverage-based Fault Localization
  • Automated Program Repair

Bibliography

  1. Introduction to Software Testing, J. Offutt and P. Amman. Cambridge University Press, 2008. (ISBN: 978-0521880381)
  2. Foundations of Software Testing, Aditya P. Mathur. Addison-Wesley 2008. (ISBN: 978-8131794760)
  3. Practical Model-Based Testing: A Tools Approach, M. Utting and B. Legeard. Morgan Kaufmann, 2006. (ISBN: 978-0123725011)
  4. Automated Program Repair, Claire Le Goues, Michael Pradel, Abhik Roychoudhury.Communications of the ACM, Vol. 62, No. 12, Pages 56-65, December 2019.

Atualizado: