Lesson 1: Introduction to Manual Testing.

1. What is Manual Testing?

Manual testing is the process of evaluating software functionality by executing test cases without automation tools. A tester plays the role of an end-user, clicking through the app, entering data, and checking outputs.

  • Focus is on:
    • Verifying requirements are met
    • Finding bugs before release
    • Ensuring usability and user experience

2. Why is Manual Testing Important?

Even with advanced automation, manual testing is critical because:

  • Exploratory testing – Humans can spot unexpected behavior automation scripts miss.
  • Usability checks – Only people can judge user-friendliness.
  • Early stage testing – Quick validation before automation is set up.
  • Ad-hoc scenarios – When no predefined script exists.

3. Key Principles of Software Testing (ISTQB Standard)

  1. Testing shows presence of defects, not absence
    • Testing can reveal defects, but it cannot guarantee the system is defect-free.
  2. Exhaustive testing is impossible
    • You can’t test every input; focus on risk-based prioritization.
  3. Early testing saves time and money
    • Start testing as soon as requirements are written.
  4. Defect clustering
    • A small number of modules usually contain most defects.
  5. Pesticide paradox
    • Repeating the same tests won’t find new bugs → review & update test cases.
  6. Testing is context dependent
    • Banking app ≠ video game. Testing approach varies.
  7. Absence-of-errors fallacy
    • Even a bug-free system is useless if it doesn’t meet user needs.

4. When to Use Manual Testing

  • Small projects where automation is overkill
  • Short-term projects with frequently changing requirements
  • Exploratory & usability testing
  • Proof-of-concept or MVP stages

5. Advantages of Manual Testing

  • Human intuition: testers can catch UI glitches, spelling errors, bad flows
  • Flexible: quick to adapt to changing requirements
  • Low upfront cost: no need for automation tools or frameworks
  • Exploratory: testers can creatively probe the system

6. Disadvantages of Manual Testing

  • Time-consuming for large projects
  • Error-prone due to human mistakes
  • Repetitive tasks (e.g., regression) become boring and inefficient
  • Not scalable: can’t handle thousands of test cases efficiently

7. Example: Manual vs Automated

Login Page Testing

  • Manual: Tester enters username/password manually → observes result
  • Automated: Script runs the login test for multiple data sets automatically

8. Practical Exercise (for the reader)

👉 Open any website (e.g., Gmail sign-in page). Write down:

  1. 3 positive test cases (valid login scenarios)
  2. 3 negative test cases (invalid input, empty fields, wrong password)
  3. Note any usability observations (e.g., error messages, button placement)

9. Summary

  • Manual testing = testing without automation tools
  • It remains essential despite automation
  • Strong focus on user experience, flexibility, and early detection
  • Best used where human judgment is irreplaceable