SOFTWARE TESTING 2M MODEL
1. Compare Verification and Validation
Verification Validation
Checks whether the product is built Checks whether the correct product
correctly is built
Done without executing code (reviews,
Done by executing code (testing)
inspections)
Focus on process Focus on final product
Example: Reviewing design documents Example: Testing a login page with
before coding real users
2. Define Error, Fault, and Failure
Error: Human mistake while coding or designing
Fault (Bug): Incorrect code due to error
Failure: System not working as expected
Real-time Example:
A developer writes wrong formula (Error) → Code has bug (Fault) → App shows
wrong result (Failure)
3. State McCabe’s Cyclomatic Complexity
It measures the complexity of a program
Based on number of decision points (if, loops)
Helps to know number of test cases needed
Formula: V(G) = E - N + 2
Example:
If a program has 3 decision points → complexity = 4 → need at least 4 test cases
4. Write about Cause and Effect Graphing
Technique to identify test cases from conditions
Shows relation between inputs (cause) and outputs (effect)
Uses graph or logical diagram
Helps in systematic test design
1
Example:
If username & password correct → login success
If wrong → error message
5. Differentiate Top-down and Bottom-up Integration Testing
Top-Down Testing Bottom-Up Testing
Testing starts from main module Testing starts from low-level modules
Uses stubs (dummy modules) Uses drivers (test programs)
High-level logic tested first Low-level functionality tested first
Example: Testing homepage first in a Example: Testing database functions
website first
6. State the Levels of Testing
Unit Testing – Testing individual components
Integration Testing – Testing combined modules
System Testing – Testing complete system
Acceptance Testing – Testing by users
Example:
Testing login function → Unit
Connecting login with database → Integration
Full app testing → System
Client testing → Acceptance
7. Define State-Based Testing
Tests system behavior based on states
Checks transitions between states
Useful for systems with different modes
Based on state diagrams
Example:
ATM machine: Idle → Card Inserted → PIN Entered → Transaction
2
8. Need of Cluster in Integration OO Testing
Groups related classes together
Helps test object interactions
Reduces complexity
Improves efficiency in testing
Example:
E-commerce: Cart class + Payment class tested together as cluster
9. Measurements for Monitoring Error, Fault, and Failure
Error rate (number of human mistakes)
Fault density (bugs per module)
Failure rate (system crashes frequency)
Mean Time Between Failures (MTBF)
Example:
If app crashes 2 times per day → high failure rate
10. Differentiate Walkthrough and Inspection
Walkthrough Inspection
Informal review process Formal review process
Led by author of document Led by trained moderator
Less structured Highly structured with rules
Example: Developer explains code to Example: Formal review meeting with
team checklist