Static testing & requirement review
Static testing is checking without executing code: reading and analysing requirements, user stories, designs, test cases and code. Dynamic testing means running the system and observing its behaviour.
This topic matters for a manual QA because it answers the question: "what does QA do when the code isn't ready?" The answer — its most valuable work: finding the defect before it ever reaches the code.
Fixing a one-line ambiguity in refinement takes minutes; the same mistake reaching production means hours of analysis, a hotfix, a retest and sometimes customer compensation. That is the practical meaning of the "early testing" principle.
| Review type | Formality | How it runs | Output |
|---|---|---|---|
| Informal review | Lowest | A quick "take a look at this" with a colleague — no paperwork | Verbal notes, small corrections |
| Walkthrough | Low-medium | The author walks the team through the document step by step, questions are raised | Shared understanding, a list of open questions |
| Technical review | Medium | Technical experts evaluate the proposed solution | A technical decision and alternatives |
| Inspection | Highest | Defined roles (moderator, author, reviewer, scribe), checklists, metrics | A formal defect list, entry/exit criteria |
When is a requirement testable? The criteria:
- Unambiguous — a sentence cannot be read two ways
- Measurable — numbers instead of "fast", "convenient", "sufficient"
- Complete — both the success case and the error case are described
- Consistent — it does not contradict another requirement
- Traceable — the business need it comes from is known
- Feasible — achievable with the available time and technology
Red-flag words (ask a question the moment you see them): etc., usually, as much as possible, user-friendly, fast, optimal, if needed, should work correctly.
In interviews, answering "the code isn't ready, what do you do?" with "I wait" is an instant minus. The strong answer is a list: I review the requirements and prepare a question list, check that acceptance criteria are verifiable, write test cases/checklists, prepare test data and the environment, and refresh stale regression cases. If you once found a real defect in a review — tell that story; it doubles the strength of the answer.