Testing Flashcards
Acceptance Testing
Formal testing conducted to determine whether or not a system satisfies its acceptance criteria and to enable the customer to determine whether or not to accept the system. It is usually performed by the customer.
Agile Testing
Software testing practice that follows the principles of the agile manifesto, emphasizing testing from the perspective of customers who will utilize the system. It is usually performed by the QA teams.
Alpha Testing
Type of testing a software product or system conducted at the developer’s site. Usually it is performed by the end user.
Beta Testing
Final testing before releasing application for commercial purpose. It is typically done by end-users or others.
Benchmark Testing
Testing technique that uses representative sets of programs and data designed to evaluate the performance of computer hardware and software in a given configuration. It is performed by testing teams.
Big Bang Integration Testing
Testing technique which integrates individual program modules only when everything is ready. It is performed by the testing teams.
Boundary Value Testing
Software testing technique in which tests are designed to include representatives of boundary values. It is performed by the QA testing teams.
Branch Testing
Testing technique in which all branches in the program source code are tested at least once. This is done by the developer.
Black box Testing
A method of software testing that verifies the functionality of an application without having specific knowledge of the application’s code/internal structure. Tests are based on requirements and functionality. It is performed by QA teams.
Domain Testing
White box testing technique which contains checkings that the program accepts only valid input. It is usually done by software development teams and occasionally by automation testing teams.
End-to-end Testing
Similar to system testing, involves testing of a complete application environment in a situation that mimics real-world use, such as interacting with a database, using network communications, or interacting with other hardware, applications, or systems if appropriate. It is performed by QA teams.
Endurance Testing
Type of testing which checks for memory leaks or other problems that may occur with prolonged execution. It is usually performed by performance engineers.
Functional Testing
Type of black box testing that bases its test cases on the specifications of the software component under test. It is performed by testing teams.
Gray Box Testing
A combination of Black Box and White Box testing methodologies: testing a piece of software against its specification but using some knowledge of its internal workings. It can be performed by either development or testing teams.
GUI software Testing
The process of testing a product that uses a graphical user interface, to ensure it meets its written specifications. This is normally done by the testing teams.
Globalization Testing
Testing method that checks proper functionality of the product with any of the culture/locale settings using every type of international input possible. It is performed by the testing team.
Integration Testing
The phase in software testing in which individual software modules are combined and tested as a group. It is usually conducted by testing teams.
Interface Testing
Testing conducted to evaluate whether systems or components pass data and control correctly to one another. It is usually performed by both testing and development teams.
Load Testing
Testing technique that puts demand on a system or device and measures its response. It is usually conducted by the performance engineers.
Mutation Testing
Method of software testing which involves modifying programs’ source code or byte code in small ways in order to test sections of the code that are seldom or never accessed during normal tests execution. It is normally conducted by testers.
Non-functional Testing
Testing technique which focuses on testing of a software application for its non-functional requirements. Can be conducted by the performance engineers or by manual testing teams.
Negative Testing
Also known as “test to fail” - testing method where the tests’ aim is showing that a component or system does not work. It is performed by manual or automation testers.
Operational Testing
Testing technique conducted to evaluate a system or component in its operational environment. Usually it is performed by testing teams.
Passive Testing
Testing technique consisting in monitoring the results of a running system without introducing any special test data. It is performed by the testing team.
Parallel Testing
Testing technique which has the purpose to ensure that a new application which has replaced its older version has been installed and is running correctly. It is conducted by the testing team.
Performance Testing
Functional testing conducted to evaluate the compliance of a system or component with specified performance requirements. It is usually conducted by the performance engineer.
Regression Testing
Type of software testing that seeks to uncover software errors after changes to the program (e.g. bug fixes or new functionality) have been made, by retesting the program. It is performed by the testing teams
Recovery Testing
Testing technique which evaluates how well a system recovers from crashes, hardware failures, or other catastrophic problems. It is performed by the testing teams.
Requirements Testing
Testing technique which validates that the requirements are correct, complete, unambiguous, and logically consistent and allows designing a necessary and sufficient set of test cases from those requirements. It is performed by QA teams.
Sanity Testing
Testing technique which determines if a new software version is performing well enough to accept it for a major testing effort. It is performed by the testing teams.
Scenario Testing
Testing activity that uses scenarios based on a hypothetical story to help a person think through a complex problem or system for a testing environment. It is performed by the testing teams
Smoke Testing
Testing technique which examines all the basic components of a software system to ensure that they work properly. Typically, smoke testing is conducted by the testing team, immediately after a software build is made.
Stress Testing
Testing technique which evaluates a system or component at or beyond the limits of its specified requirements. It is usually conducted by the performance engineer.
Structural Testing
White box testing technique which takes into account the internal structure of a system or component and ensures that each program statement performs its intended function. It is usually performed by the software developers.
System Testing
The process of testing an integrated hardware and software system to verify that the system meets its specified requirements. It is conducted by the testing teams in both development and target environment.
Unit Testing
Software verification and validation method in which a programmer tests if individual units of source code are fit for use. It is usually conducted by the development team
User Interface Testing
Type of testing which is performed to check how user-friendly the application is. It is performed by testing teams.
Usability Testing
Testing technique which verifies the ease with which a user can learn to operate, prepare inputs for, and interpret outputs of a system or component. It is usually performed by end users
Vulnerability Testing
Type of testing which regards application security and has the purpose to prevent problems which may affect the application integrity and stability. It can be performed by the internal testing teams or outsourced to specialized companies.
White box Testing
Testing technique based on knowledge of the internal logic of an application’s code and includes tests like coverage of code statements, branches, paths, conditions. It is performed by software developers.