Curriculum in Software Testing
Introduction to Software Testing
Testing Fundamentals
Testing Fundamentals
Manual Testing
Automated Testing
Testing Tools and Technologies
Performance Testing
Security Testing
Usability Testing
Test Management and Quality Assurance
Test Environments and Data Management
Test Case Management and Execution
Agile Testing
Test Automation Frameworks
Test Automation Best Practices
Curriculum in Software testing
Software testing is preferred by more than 35% of developers. In the tech world, software testing is the most well-known and in-demand programming language.
- Definition and goals of software testing
- Importance of software testing
- Software development life cycle and testing phases
- Types of testing (functional, non-functional, etc.)
- Testing levels (unit, integration, system, acceptance)
- Testing strategies (black box, white box, grey box)
- Test planning process
- Test plan creation
- Test case design
- Traceability matrix
- Manual testing process
- Test execution and reporting
- Defect reporting and tracking
- Exploratory testing
- Introduction to test automation
- Test automation tools and frameworks
- Test script development
- Test data and test environment setup
- Overview of popular testing tools (e.g., Selenium, JUnit, TestNG)
- Continuous integration and continuous testing
- API testing and tools
- Introduction to performance testing
- Load testing, stress testing, and scalability testing
- Performance testing tools (e.g., JMeter, LoadRunner)
- Introduction to security testing
- Common security vulnerabilities
- Security testing tools (e.g., OWASP ZAP)
- Introduction to usability testing
- User interface (UI) and user experience (UX) testing
- Usability testing techniques and tools
- Test management tools (e.g., TestRail, Jira)
- Test reporting and metrics
- Quality assurance and quality control
- Test environment setup
- Test data management
- Data-driven testing
- Test case management tools
- Test execution, regression testing, and test cycles
- Test result analysis and reporting
- Agile testing principles
- Testing in Scrum and other Agile methodologies
- Test-driven development (TDD) and behavior-driven development (BDD)
- Introduction to automation frameworks
- Data-driven and keyword-driven frameworks
- Hybrid and modular frameworks
- Code reviews and version control for automation scripts
- Continuous integration and continuous testing for automation
- Maintenance of automated test scripts