Complete Manual Testing Tutorial
Manual testing is testing software by hand — a tester uses the application like a real user, compares what happens with what should happen, and reports the differences. It's the foundation of every QA career: automation, API testing and performance testing all build on the same skills of understanding requirements, designing good test cases and reporting defects clearly. This tutorial covers the complete fundamentals in one place, then links every in-depth manual testing tutorial on the site in learning order.
What Is Manual Testing — and Why It Still Matters
In manual testing, a person executes test cases without automation scripts: reading requirements, preparing test data, performing steps, observing results and logging defects.
- New features — you can't automate something that changes daily; it's tested manually first.
- Exploratory testing — finding the bugs nobody wrote a test case for.
- Usability and look-and-feel — judgement that scripts can't provide.
- Deciding what to automate — good automation starts with good manual test design.
Manual and automation testing work together. More: Manual & Automation Testing and Manual vs Automation Testing.
SDLC and STLC
The Software Development Life Cycle (SDLC) covers building the product: requirements, design, development, testing, deployment and maintenance. The Software Testing Life Cycle (STLC) is the testing part in detail:
| STLC Phase | What the Tester Does | Output |
|---|---|---|
| 1. Requirement analysis | Study requirements, ask questions, identify what's testable | Questions, testable requirements |
| 2. Test planning | Scope, approach, effort, schedule, risks | Test plan, estimates |
| 3. Test case design | Write test cases and prepare test data | Test cases, RTM |
| 4. Environment setup | Make sure the test environment and data are ready | A ready environment |
| 5. Test execution | Run tests, log defects, retest fixes | Results, defect reports |
| 6. Test closure | Summarise results, lessons learned | Test summary report |
More: SDLC & STLC: Models, Phases & Differences and Software Test Estimation.
Testing Levels
- Unit testing — individual functions or classes, usually by developers.
- Integration testing — modules working together, for example, the order service calling payments.
- System testing — the complete application against requirements; most of a QA team's work.
- User acceptance testing (UAT) — business users confirm it meets their needs before release.
More: Integration, System & Other Testing Types.
Types of Testing
Functional Testing — Does It Work Correctly?
- Smoke testing — broad, shallow checks that a new build is stable enough to test.
- Sanity testing — narrow checks of specific functionality after a fix or small change.
- Regression testing — making sure existing features still work after changes.
- Retesting — confirming a specific defect is fixed.
More: Functional Testing Types and Smoke vs Sanity Testing.
Non-Functional Testing — How Well Does It Work?
Performance, load and stress, security, usability, compatibility (browsers, devices, operating systems) and localization.
More: Non-Functional Testing, Compatibility & Localization and GUI Testing vs Usability Testing.
Black Box, White Box and Grey Box
Black-box testing checks behaviour without looking at the code — most manual testing. White-box testing uses knowledge of the code's internal paths. Grey-box testing uses partial knowledge, such as database structure or API contracts.
More: Black, White & Grey Box Testing.
Writing Good Test Cases
A test case describes one check precisely enough that anyone can run it and get the same result:
| Field | Example |
|---|---|
| ID | TC_LOGIN_003 |
| Title | Login fails with a wrong password |
| Preconditions | User asha@example.com exists and is active |
| Steps | 1. Open the login page 2. Enter asha@example.com and "wrong123" 3. Click Log in |
| Expected result | "Invalid email or password" is shown; the user stays on the login page |
| Priority | High |
| Requirement | REQ-12 (traceability) |
Good test cases have one clear purpose, precise steps, a specific expected result and traceability to a requirement. The Requirement Traceability Matrix (RTM) maps requirements to test cases so nothing is missed.
More: Test Plan, Strategy & Test Cases.
Test Design Techniques
These techniques give strong coverage with fewer test cases.
Example requirement: "Age must be between 18 and 60."
- Equivalence partitioning — split inputs into groups that behave the same and test one value from each: below 18 (e.g. 10), 18–60 (e.g. 35), above 60 (e.g. 70).
- Boundary value analysis — bugs cluster at edges, so test 17, 18, 19 and 59, 60, 61.
- Decision tables — for combinations of conditions, such as discount rules based on membership and order value.
- State transition — for things with states, such as an account that locks after three failed logins.
- Error guessing — experience-based cases: empty fields, special characters, very long input, double-clicking Submit.
More: Test Design Techniques.
Reporting Defects
A good bug report has a clear summary, environment and build, steps to reproduce, expected vs actual result, severity and priority, and evidence such as screenshots or recordings.
Defects then move through a life cycle — new, assigned, fixed, retest, closed (or reopened).
More: Defect & Bug Management, Severity vs Priority and The Complete Jira for Testers Guide.
Manual Testing in Agile Teams
In Scrum, testers join refinement to clarify acceptance criteria, estimate testing effort in sprint planning, test stories as soon as they're ready, automate regression candidates, and report quality at the sprint review.
Testing happens throughout the sprint, not at the end.
More: Agile & Scrum for Testers.
Skills and Tools of a Manual Tester
Skills
- Reading requirements critically
- Test design
- Attention to detail
- Clear writing
- Domain knowledge
- Communication
Tools
- Jira for defects and stories
- Test management tools such as Xray, Zephyr and TestRail
- Browser DevTools
- Postman for quick API checks
- SQL for database validation
Explore the free manual testing tools and try realistic tasks in the Manual Testing Simulator.
The Learning Path
Part 1 — Testing Foundations
- Manual & Automation Testing — testing basics and when to use each.
- Functional Testing Types — smoke, sanity, regression, retesting and more.
- Defect & Bug Management — defect life cycle, severity vs priority and triage.
- Agile & Scrum for Testers — ceremonies and the tester's role.
Part 2 — Process & Planning
- Test Documentation & Planning — test plans, test cases, RTM and strategy.
- SDLC & STLC — the development and testing life cycles.
- Test Design Techniques — equivalence partitioning, boundary values, decision tables.
- Black, White & Grey Box Testing — approaches and coverage.
- Software Test Estimation — estimating effort step by step.
Part 3 — Non-Functional & Specialised Testing
- Non-Functional & Performance Testing — performance, load, security and usability basics.
- How to Do Performance Testing — a 7-step process.
- Integration, System & Other Testing — integration, system and end-to-end testing.
- Compatibility, Localization & Platform Testing
- GUI Testing vs Usability Testing
Part 4 — QA Concepts & Interviews
- QA Concepts, Metrics & Glossary — QA vs QC, metrics and key terms.
- Top 30 Manual Testing Interview Questions
- Scenario-Based Testing Questions
- How Would You Test a Pencil?
How to Use This Guide
- Beginners: read this page, then Parts 1 → 4 in order — a complete manual testing curriculum.
- Interview prep: testing types, STLC, test design techniques, defect management and QA concepts, then the question banks in Part 4.
- Moving to automation: finish Parts 1–2, then follow Manual Tester to Automation.
Frequently Asked Questions
What Is Manual Testing?
Testing software by hand — executing test cases like a user, comparing actual with expected results and reporting defects — without automation scripts.
Is Manual Testing Still in Demand?
Yes, for new features, exploratory and usability testing and UAT — and manual testing skills are the foundation for automation roles.
What Is the Difference Between Smoke and Sanity Testing?
Smoke testing checks that a new build's core functions work well enough to continue testing; sanity testing checks specific functionality after a fix or minor change.
What Is the Difference Between Severity and Priority?
Severity is a defect's technical impact; priority is how urgently the business wants it fixed. A defect can be high severity and low priority, or the reverse.
What Is the Difference Between SDLC and STLC?
SDLC is the whole process of building software; STLC is the testing process within it — analysis, planning, design, environment setup, execution and closure.
What Are Test Design Techniques?
Structured ways to choose test cases — equivalence partitioning, boundary value analysis, decision tables, state transition and error guessing — to get good coverage with fewer tests.
What Is the Difference Between QA and QC?
QA is process-oriented and aims to prevent defects; QC is product-oriented and aims to find them through testing.
How Long Does It Take to Learn Manual Testing?
About 4–8 weeks of steady study and practice to cover the fundamentals and be ready for entry-level interviews.
From Real Projects
Understanding requirements, writing test cases and reviewing them with the team were the foundation of my work on Apkope, Canolog and Testsigma. I performed smoke, sanity, functional, integration, system and regression testing, tracked execution in TestRail and reported and retested defects in Jira. Solid manual testing is what makes automation worthwhile — you can only automate well what you understand well. Master requirement analysis and test case design first — every other testing skill depends on them.
📚 Official documentation: ISTQB Glossary of testing terms