Manual Testing

  1. What is Testing?

  2. STLC

  3. Test levels

  4. Testing Types

  5. Test Objectives

  6. Errors, Defects, Failures

  7. Root Causes Analysis

  8. Test Scenarios

  9. Test case Writing

  10. Test Planning & designing

  11. Defect life cycle

  12. Testing Principles

  13. Shift left approach

  14. Static and dynamic testing

  15. Testing techniques

  16. Bug writing

  17. Entry and Exit criteria

  18. Test Case Prioritization

  19. Risk Management

  20. Bug triage, bug leakage and bug release

  21. Report writing

  22. URS, BRS, SRS documents

  23. Testing metrics

  24. Testing tools

What is Testing?

Testing is the process of evaluating a software application or system to find defects, verify requirements, and ensure quality before it is delivered to users. In simple words, testing checks whether the software works as expected and meets user and business needs. While testing the application, testers generally validate Correctness of features, Data accuracy, Error handling, Performance under load, Compatibility across devices/browsers and Security vulnerabilities.

Key purposes of Testing:

  • 🐞 Find defects early

  • ✅ Verify functionality against requirements

  • 🔒 Ensure reliability, security, and performance

  • 👤 Improve user experience

  • 💰 Reduce cost of fixing issues after release

Errors, Defects, Failures

  • Error : An Error is a human mistake made during software development.

  • Defects (Bug) : A Defect is a flaw in the software code or design caused by an error.

  • Failures : A Failure occurs when the software behaves incorrectly during execution.

Bug triage, Bug leakage and Bug release

  • Bug triage : Bug Triage is the process of reviewing, analyzing, prioritizing, and assigning reported defects to decide what should be fixed, when, and by whom.

  • Bug leakage : Bug Leakage occurs when a defect is found by the customer in production, but was not detected by the testing team during testing phases.

  • Bug release : Bug Release happens when a known defect is intentionally released into production with management or client approval.

Defect Life Cycle

The Defect Life Cycle describes the different states a defect goes through from the time it is identified until it is closed.

New - Tester logs a defect in a defect tracking tool.

Assigned - Tester assigns the defect to a developer or team lead.

Open - Developer starts working on the defect.

Fixed - Developer fixes the defect and updates the status.

Retest - Tester retests the defect in the new build.

Verified - Tester confirms the fix is working as expected.

Closed - Defect is closed after successful verification.

Reopened - If defect still exists after fix, sent back to developer.

Rejected - Not a valid defect (working as designed).

Deferred - Fix postponed to future release.

Duplicate - Same defect already reported.

Not a Bug - Expected behavior.

Cannot Reproduce - Unable to reproduce the bug by developer.

Defect Life Cycle