Understanding software testing terminology is essential for QA professionals and developers to communicate effectively and ensure quality in software projects.
A set of conditions and variables used to determine if a software feature works as expected. Includes steps, test data, preconditions, and expected results.
A document describing the scope, approach, resources, and schedule of testing activities. Serves as a roadmap for QA teams.
Any flaw or error in software that causes it to produce incorrect or unexpected results. Also known as an issue or fault.
Re-running previous test cases to ensure new changes or enhancements do not break existing functionality.
Initial testing to check whether the basic and critical functions of an application are working correctly before detailed testing.
Testing performed by end-users or clients to verify if the software meets business requirements and is ready for production.
Using tools and scripts to perform repetitive tests efficiently, reducing human effort and increasing test accuracy.
Testing performed by a human tester without automation tools. Useful for exploratory, usability, and ad-hoc testing.
Setup of software, hardware, and network conditions required to execute test cases effectively.
A high-level description of what needs to be tested. Test scenarios are broken down into multiple test cases.
The data used to execute test cases, including valid, invalid, boundary, and edge case values.
A set of instructions written in a programming language to automate the execution of test cases.
A narrow regression test focused on verifying a specific fix or functionality after a minor change.
Testing the interaction between different modules or components to identify interface defects.
End-to-end testing of a complete, integrated system to validate compliance with requirements.
Evaluating system speed, responsiveness, and stability under various workload conditions.
Identifying vulnerabilities and ensuring data protection against unauthorized access or attacks.
Evaluating how user-friendly and intuitive the software is for end-users.