Detailed Software Testing Notes
Detailed Software Testing Notes
- **Software Testing:** The process of executing a program to find defects and ensure it meets user
requirements.
- **Faults:** A defect in the system that may cause incorrect behavior.
- **Errors:** Mistakes in logic or coding by developers.
- **Failures:** When a system does not function as expected during execution.
**Exam Questions:**
- Define fault, error, and failure. (April 2022)
- Write two differences between bugs, faults & failures. (April 2022)
- **Objectives of Testing:**
1. Finding defects before deployment.
2. Ensuring software meets user requirements.
3. Improving software reliability and security.
4. Preventing future defects.
- **Principles of Testing:**
1. Testing shows the presence of defects, not their absence.
2. Exhaustive testing is impossible; focus on key areas.
3. Early testing saves cost and time.
4. Defect clustering: Most defects occur in small modules.
5. Repeating the same tests reduces effectiveness.
**Exam Questions:**
- List two objectives of software testing. (Nov 2023)
3. Verification and Validation (V&V)
**V-Model:**
1. Requirement Analysis -> Acceptance Testing
2. Design -> System Testing
3. Coding -> Unit & Integration Testing
**Exam Questions:**
- Define verification and validation. (Nov 2022)
- Explain V-model with a diagram. (April 2022, Nov 2023)
- **White Box Testing:** Internal structure is tested (Path Testing, Code Coverage).
- Example: Testing all possible loops and conditions in a login system.
- **Black Box Testing:** Functionality-based testing without looking at code.
- Example: Checking if a login form accepts correct credentials.
**Equivalence Partitioning (EP):** Dividing input into valid and invalid sets.
- Example: Password length (Valid: 8-16 characters), test groups:
- Below 8 (invalid), 8-16 (valid), Above 16 (invalid).
**Exam Questions:**
- Explain Equivalence Partitioning. (April 2022)
- Difference between Black Box & White Box Testing. (Nov 2022, Nov 2023)
5. Test Case Design & Testing Life Cycle
- **Test Case:** A document with input, execution steps, expected result, and actual result.
- Example Test Case for Login Form:
1. Input: Username & Password.
2. Expected Result: Successful login.
3. Actual Result: Login failed.
**Exam Questions:**
- What is a test case? Explain with an example. (April 2022, Nov 2023)
- Write a test plan for Flipkart login page. (April 2023)
**Exam Questions:**
- Differentiate between testing and debugging. (Nov 2022)
**Exam Questions:**
- Write short note on Agile Testing Quadrants. (Nov 2023)
- Explain different layers of automated testing. (Nov 2022)