Course Content
Introduction to Testing
- What is testing?
- What is the need for testing?
- Principles of testing
- Verification Validation
- Expected results
- Fundamental test process
- Exit, Completion, Closure and Acceptance Criteria
- psychology of testing
Software Development Lifecycle (SDLC)
- SDLC models
- Waterfall Model
- Spiral Model
- V model
- Prototype Model
- Agile Model
- Test levels
- Functional and Structural Testing
- Maintenance testing
- Non-function system testing
- Retesting and Regression testing
Static techniques and testing
- Review and test process
- Phases of formal review
- Using tools perform static analysis
- Alpha testing
- Beta testing
- UAT
- End-End testing
- Ad-Hoc testing
- Risk-based testing
- Sanity/Smoke testing
- Regression testing
- Exploratory testing
- Concurrent testing
- Parallel testing
- Usability testing
- Accessibility testing
- Security testing
Levels of testing
- Unit testing
- Integration testing
- System testing
- White Box and Black Box testing
- Static testing Dynamic testing
- Inspection and review process
Test Design Techniques
- Find test conditions
- Design test cases
- Categories of test design techniques
- Equivalence partitioning
- Boundary value analysis
- Decision table testing
- Use case testing
- Path and statement testing
- State transition testing
Software Testing Lifecycle
- Fundamental test process
- Test strategy and management
- Test planning
- Test case design
- Test execution
- Test reporting and metrics
- Test documentation templates
- Automation Overview
Test management
- Test organization
- Test planning and estimation
- Test approaches or strategies
- Test progress control and monitor
- Configuration management
- Risk and testing
- Incident management
Tool support for testing
- Various types of analysis tool
- Benefits of tools
- Risks of tools
- Introducing a tool to an organisation