Menuka Mukhiya

What QA actually means in software.

My own working notes on Quality Assurance — definitions, process, testing types, and terminology — written while I learn QA alongside frontend development.

6
Process Steps (STLC)
12
Testing Types Covered
5
HTTP Methods (Postman)
8
Glossary Terms
Basics Process Testing Types Manual vs Automated Glossary

The Basics

Most people think QA means clicking around an app looking for bugs. That's only a small part of it.

Definition

Quality Assurance (QA) is the set of activities that ensure a software product meets its requirements and works reliably for the people who use it — before it ever reaches them.

QA isn't a single step at the end of development. It's a mindset applied throughout the entire process: reviewing requirements, designing test cases, executing tests, tracking defects, and confirming fixes.

QA

The process. Focused on preventing defects by improving the process itself — planning, standards, and reviews before code is even written.

QC

The product. Focused on identifying defects in the actual product — checking whether the built feature meets the requirement.

Testing

The activity. The specific act of executing a system to find defects — one activity that lives inside QC, which lives inside QA.

The QA Process (STLC)

A simplified version of the Software Testing Life Cycle.

1

Requirement Analysis

Review requirements for gaps, ambiguity, or things that can't actually be tested as written.

2

Test Planning

Decide scope, approach, resources, and schedule — what gets tested, how, and by whom.

3

Test Case Design

Write specific, repeatable test cases and test data covering normal use, edge cases, and failure conditions.

4

Test Execution

Run the test cases manually or through automation, and record what passed and what failed.

5

Defect Reporting

Log failures as clear bug reports with steps to reproduce, expected vs. actual result, and severity.

6

Retesting & Regression

Confirm the fix works, and re-run related tests to make sure nothing else broke because of it.

Types of Testing

The core categories every QA learner runs into early.

Functional

Does the feature do what it's supposed to do?

Regression

Did a new change break something that used to work?

Smoke

Quick check that the build is stable enough to test further.

Sanity

Narrow, focused check after a small fix or change.

Integration

Do separate modules work correctly together?

UAT

Does it meet real user needs, tested by actual stakeholders?

Performance

How does it behave under load, stress, or many users?

Security

Can the system be broken into or misused?

Usability

Is it actually easy and clear for a real person to use?

Compatibility

Does it work across browsers, devices, and screen sizes?

API Testing

Do requests and responses behave correctly at the API layer?

Automation

Scripting repetitive tests so they run without manual effort.

Manual vs. Automated

Manual Testing

Best for exploratory testing and new features. Good at catching usability issues a script would miss. Slower to repeat across every release.

Automated Testing

Best for repetitive regression checks. Fast and consistent once written and maintained. Doesn't replace human judgment or exploratory testing.

Glossary

Test Case

A documented set of steps, inputs, and expected results used to verify one specific behavior.

Test Plan

A document outlining scope, approach, resources, and schedule for a testing effort.

Defect / Bug

An actual flaw in the code that causes it to behave incorrectly.

Severity

How badly a defect affects the system technically — e.g. crashes vs. cosmetic issue.

Priority

How urgently a defect needs fixing from a business perspective, independent of severity.

Regression

Re-testing previously working features after a change, to confirm nothing broke.

STLC

Software Testing Life Cycle — the structured sequence of testing phases within a project.

Edge Case

An input or condition at the extreme boundary of what's expected — often where bugs hide.

Still learning, one test case at a time.

These notes will keep growing as I go deeper into QA.

← Back to Home