
Letβs go through the key testing techniques used in Manual Testing in a clear and structured way:
π Manual Testing Techniques
Manual testing techniques are methods that testers use to identify defects and ensure software quality. They are divided into two main categories:
1. Black Box Testing Techniques
- Focus on functionality of the software without knowing the internal code.
a) Equivalence Partitioning (EP)
- Divide input data into valid and invalid groups (partitions).
- Only one test case per group is sufficient.
- Example: Age input (valid: 18-60, invalid: <18, >60).
b) Boundary Value Analysis (BVA)
- Test values at boundaries of input ranges.
- Detects errors at edge cases.
- Example: Age 17, 18, 60, 61 if valid range is 18-60.
c) Decision Table Testing
- Use a table to represent combinations of inputs and expected outputs.
- Helps test complex business rules.
- Example: Loan approval based on income and credit score.
d) State Transition Testing
- Tests how the system changes state based on events/actions.
- Useful for applications with different modes or states.
- Example: Login system β Logged Out β Logging In β Logged In / Error.
e) Cause-Effect Graphing
- Identify causes (inputs) and effects (outputs) and design test cases.
- Helps handle complex logical conditions.
f) Exploratory Testing
- Tester explores the application without predefined test cases.
- Relies on experience, intuition, and creativity.
- Finds unexpected defects.
2. White Box Testing Techniques
- Focus on internal code, logic, and structure.
- Usually done by developers, but manual testers may understand these for coverage analysis.
a) Statement Coverage
- Ensure every line of code is executed at least once.
b) Branch Coverage
- Ensure every possible branch (if/else) is executed.
c) Path Coverage
- Ensure all possible paths through the code are tested.
d) Condition Coverage
- Test all logical conditions (true/false outcomes).
3. Other Manual Testing Techniques
- Ad-Hoc Testing: Informal testing without documentation, used to find defects quickly.
- Smoke Testing: Quick check to ensure the basic functionality works after a build.
- Sanity Testing: Verify specific functionality or bug fixes before detailed testing.
- Regression Testing: Check that new changes do not break existing functionality.
- Usability Testing: Validate user experience and interface.
Summary Table
Technique | Purpose | Notes |
---|---|---|
Equivalence Partitioning | Reduce test cases by grouping | Valid/Invalid inputs |
Boundary Value Analysis | Test edges | Often finds common errors |
Decision Table | Complex rules | Input combinations |
State Transition | Check system states | Event-driven apps |
Exploratory | Ad-hoc discovery | Relies on tester skill |
Smoke/Sanity | Quick checks | Initial build verification |
Regression | Prevent re-introduced bugs | After changes/fixes |
β
In short:
Manual testing techniques help testers systematically identify defects, covering functional, boundary, logical, and usability aspects of software.