In this course, you will :
- Gain an understanding of testing theory.
- Practise writing tests for various quality intentions, such as code coverage, defect detection, and statistical testing.
- Create test plans to direct the testing phase of the software development lifecycle.
- Create defect reports in order to provide transparency and understanding to supervisors, coworkers, and users.
1. Testing Foundations
- Dependability Definitions
- Testing Principles
- Testing Principles: Where
- Testing Principles: How
- The "V Model" of Software Development
- Validation and Verification in the "V Model"
- Structural Testing3mMutation Testing
2. Testing in the Software Development Lifecycle
- What is a test plan?
- Importance of a Good Test Plan
- Stages of Software Testing Process
- Test (Status) Reports
- Risk-based Test Planning
- Software Defect Reports
- Software Defect Reports: Analysis
- Software Defect Reports: Reporting
- Software Defect Reports: Report Content
- Software Defect Reports: Track, Retest, and Close
3. Writing Good Unit Tests
- Test Doubles: Input
- Test Doubles: Output
- Assessing Adequacy and Code Coverage Analysis with JaCoCo
- Flakey Tests and How to Avoid Them