IT-362: Software Testing - Chapter 1 Notes
1. Define Software Testing. Why is it important?
Software testing is the process of evaluating a software application to find errors, bugs, or missing requirements.
Importance:
- Ensures the product works as expected.
- Helps detect bugs early.
- Improves software quality.
- Increases customer satisfaction.
2. What are the objectives of software testing?
- To find defects or errors.
- To verify that the software meets the business and technical requirements.
- To ensure the product works under different conditions.
- To maintain the quality of the product.
3. Explain the principles of software testing.
Seven principles:
1. Testing shows presence of defects.
2. Exhaustive testing is impossible.
3. Early testing.
4. Defect clustering.
5. Pesticide paradox.
6. Testing is context-dependent.
7. Absence of errors fallacy.
IT-362: Software Testing - Chapter 1 Notes
4. What are the fundamentals of software testing?
- Understand requirements.
- Test planning and strategy.
- Test case design.
- Execution of test cases.
- Defect reporting and tracking.
- Test documentation.
- Regression testing.
- Evaluation and closure.
5. Describe the V-V Model with a neat diagram.
The V-Model (Verification and Validation model) is a development model where each phase has a corresponding testing
phase.
Diagram:
Requirements <-> Acceptance Testing
| |
System Design <-> System Testing
| |
Architecture <-> Integration Testing
| |
Module Design <-> Unit Testing
Coding
Explanation: Left side = development stages, Right side = testing stages.
IT-362: Software Testing - Chapter 1 Notes
6. Compare the V-Model with the Waterfall Model.
Criteria | Waterfall Model | V-Model
----------------------|-----------------------------|-------------------------
Testing phase | After development | Parallel with development
Flexibility | Less flexible | More structured
Error detection | Late in the process | Early in the process
Cost of fixing bugs | High | Lower
Suitable for | Simple, small projects | Critical/high-quality apps