đ§Ē Manual Testing â Overview
Manual Testing is a software testing process where test cases are executed manually without using automation tools.
The tester plays the role of an end-user and verifies the application to ensure it works as expected.
Manual testing helps identify:
- Functional issues
- UI problems
- User experience bugs
- Logical errors
- Performance glitches (basic)
đ¯ Why Manual Testing is Important?
Because:
- It helps catch bugs early
- It ensures the application meets user requirements
- Some tests cannot be automated (UI, usability)
- It provides human insight into usability and user experience
đ 1. Software Testing Basics
What is Testing?
Testing is the process of evaluating software to detect differences between expected and actual behavior.
Goal of Testing
- Improve product quality
- Ensure reliability
- Verify functionality
- Prevent defects
đ§Š 2. Types of Manual Testing
1ī¸âŖ Functional Testing
Tests the features and actions of software.
- Smoke Testing
- Sanity Testing
- Integration Testing
- System Testing
- Regression Testing
- User Acceptance Testing (UAT)
2ī¸âŖ Non-Functional Testing
Checks performance, usability, reliability.
- Usability Testing
- Performance (basic manual checks)
- Compatibility Testing
- Accessibility Testing
3ī¸âŖ White Box vs. Black Box Testing
Black Box Testing
- Tester does not know internal code
- Focus on input/output
- Example: Login verification
White Box Testing
- Tester knows internal code
- Validates logic, loops, conditions
Grey Box Testing
- Partial internal knowledge
đ 3. Test Artifacts in Manual Testing
These are documents created during the testing process:
- Test Plan â Testing strategy
- Test Scenario â High-level testing idea
- Test Case â Step-by-step test steps
- Test Data â Values to test with
- Test Report â Summary of testing results
- Bug Report â Defect description for developers
đ 4. Test Case Structure
A typical test case includes:
- Test Case ID
- Test Title
- Pre-conditions
- Test Steps
- Expected Result
- Actual Result
- Status (Pass/Fail)
đ 5. Bug Life Cycle (Defect Life Cycle)
- New
- Assigned
- Open
- Fixed
- Retested
- Closed
- Reopened (if still failing)
đ 6. Key Techniques in Manual Testing
- Equivalence Partitioning
- Boundary Value Analysis (BVA)
- Error Guessing
- Exploratory Testing
- Ad Hoc Testing
âī¸ 7. Manual Testing vs Automation Testing
| Feature | Manual Testing | Automation Testing |
|---|---|---|
| Execution | Manual | Tool-based |
| Time | Slower | Faster |
| Cost | Low setup cost | High initial cost |
| Best For | UI, usability, exploratory | Repeated, regression, large data |
| Human Insight | High | Low |
đŧ 8. Skills Required for Manual Testing
- Understanding SDLC & STLC
- Writing test cases
- Bug reporting
- Logical thinking
- Communication skills
- Basic SQL
- Basic knowledge of UI/UX
đ 9. Where Manual Testing is Used Today?
Even with automation, manual testing is essential in:
- Mobile apps
- Web applications
- Gaming testing
- Usability testing
- Exploratory testing
- Initial development stages
đ 10. Roles Related to Manual Testing
- QA Tester
- Test Engineer
- QA Analyst
- UAT Tester
- Functional Tester