Skip to content
QA Knowledge Hub

Functional vs non-functional testing

Updated 2026-11-13 · 2 min read

Compare what a system does with measurable quality characteristics such as response time, usability and recovery. Includes a comparison table, concrete examples and an interview answer.

The difference in one table

AspectFunctional testingNon-functional testing
FocusBehaviour and business rulesQuality characteristics under stated conditions
QuestionDoes the feature produce the right outcome?How well does the system operate?
ExampleA successful payment creates one orderCheckout meets its agreed response-time target under load
Expected resultSpecific output or state changeMeasurable criteria or structured evaluation
ToolsManual exploration, API or UI automationDepends on the characteristic: load, accessibility, recovery and more

Examples

Functional: submit an order with an invalid coupon. Check that it is rejected, the total remains correct and no payment starts. This tests a business rule.

Non-functional: run the checkout journey under an agreed workload and compare response times and error rates with agreed acceptance criteria. Separately, assess whether keyboard users can reach and understand the coupon error. These examine performance and accessibility, not just whether the coupon calculation is correct.

A useful requirement names the conditions and the evidence needed. “Checkout should be fast” is too vague to decide a pass or fail.

How to answer in an interview

Functional testing checks what the system does, including business rules and state changes. Non-functional testing evaluates quality characteristics such as performance, usability and reliability under stated conditions. For checkout, I check correct totals functionally and evaluate response times under an agreed workload separately. Both need observable acceptance criteria, and one journey can provide evidence for both.

Common confusion

Non-functional does not mean optional or impossible to automate. Also avoid treating security as a neat exclusive bucket: access-control behaviour can be tested as a functional rule, while broader security evaluation examines threats and resilience. State the objective instead of arguing over the label.

Likely follow-up: Can a feature pass functional tests and still be unusable? Yes: a correct checkout may be too slow or inaccessible in the intended operating conditions.

This is independent foundation-level learning material, not affiliated with ISTQB.

Quick answers

Is UI testing always functional?

No. A UI can be checked for behaviour, accessibility, usability or performance. The objective determines the classification.

Should non-functional work wait until the end?

No. Define the important characteristics early so design decisions and test environments can support them.

Sources

Want a project you can show in interviews?

The portfolio project kit walks you through testing a deliberately buggy app with Selenium or Playwright and API tests, then explaining it. The app itself is free.