Slides
- Introduction
- Software testing – basics
- OO testing
- Mutation analysis
- Integration testing
- Security testing
- Tool demos instructions
Practical session material
- TP1: unit testing and coverage (subject).
Objective: to manipulate a framework for automatic execution of unit test cases and understanf code coverage. - TP2: integration testing.
Objective: understand the challenges of isolating classes for unit testing and to manipulate a mock framework. - TP3: static analysis.
Objective: manipulate a static analysis tool, understand the concept of AST and write rules on the AST. - TP4: GUI testing.
Objective: manipulate a framework for the automatic execution of test cases on a UI and a DB. - TP5 – 6: automatic test generation.
Objective: experiment with different tools for the automatic generation of test cases from source code - TP7: web testing.
Objective: manipulate a capture-and-replay and a load testing framework - TP8: test suite analysis.
Objective: Analyze a large, production-quality test suite
Resources
Tools
JUnit: http://junit.org/
PMD: http://pmd.sourceforge.net/
EasyMock: http://easymock.org/
Selenium: http://docs.seleniumhq.org/
Testing concepts
Software metrics: coupling, cohesion, cyclomatic complexity
The Netflix simian army