Think of testing types as different perspectives on product quality rather than a long vocabulary list. Each answers a particular question and addresses a class of risks.
Functional and nonfunctional testing
- →Functional testing asks whether the system does what it should.
- →Nonfunctional testing asks how well the system does it under real constraints and loads.
Common types of functional testing
- →Smoke testing checks whether the system is usable for further testing.
- →Regression testing confirms that changes have not broken previously working functionality.
- →Retesting, or confirmation testing, verifies a specific defect fix.
- →Exploratory testing helps uncover risks beyond predefined scenarios.
- →Negative testing checks behavior with invalid, unexpected, and boundary inputs.
Common types of nonfunctional testing
- →Performance testing examines speed, stability, and behavior under load.
- →Security testing assesses vulnerabilities, access control, and potential attack vectors.
- →Usability testing investigates how understandable and convenient the product is for users.
- →Compatibility testing checks operation across devices, browsers, operating systems, and configurations.
- →Accessibility testing assesses whether people with disabilities can use the interface.
Keeping the terminology clear
- →First define the objective: what do you want to learn about the product?
- →Then identify the risk: what happens if a problem goes undetected?
- →Only then select the testing type and specific technique.
Good QA practice connects each testing type in a test plan to a concrete reason and business risk, rather than listing terms for appearance's sake. Testing then becomes a managed strategy instead of a formality.