Lecture Notes: Introduction to Software Testing
1. What is Software Testing?
- Definition and objectives
- Importance in software development lifecycle
2. Types of Testing
- Manual Testing vs. Automated Testing
- Unit Testing, Integration Testing, System Testing, Acceptance Testing
3. Test Planning and Documentation
- Writing test plans and test cases
- Test strategies and risk-based testing
4. Common Tools
- JUnit, Selenium, Postman
- Bug tracking systems (e.g., Jira, Bugzilla)
5. Best Practices
- Maintain test scripts
- Reproduce bugs effectively
- Ensure test coverage and traceability
6. Summary
- Testing ensures software quality, performance, and reliability.