| Name | Unit Test | Integration test | System test | Acceptance test | Other |
Black-Box Testing Testing the software (external interfaces) without consideration/knowledge of underlying software implementation. | X | X | X | X | X |
(1, 2) Functional Testing Testing the software to inuser it meets the software requirement specification. | | | X | | |
Load Testing (performance) Testing a system performance under expected or anticipated load. | | | X | | |
Stress Testing (performance) Testing a system beyond normal and expected load to find system anomalies and limits. | | | X | | |
Usability Testing Identify usability issues in software. Usability study should be conducted as early as possible via low fedelity prototypes to avoid software rework. | | | X | | X |
Regression Testing Verification step to identify the ripple effect of a change through out the software. | | | | | X |
Smoke Testing A quick "spot check" test before submitting for a comprehensive testing. | | | | | X |
Sanity Testing Similar to smoke test, a software feature or component will be spot checked; however, sanity check does not act as a gate to release for a comprehensive testing. | X | X | | | |
Parallel Testing Comparing the result of one test against another. This may include testing same software (i.e. regression), or different software | | | | | X |
| Recover TestingTesting systems ability to recover from an induced failure. | | | X | | |
Installation Testing Testing clean install or partial/complete upgrades of a software installation. | | | X | | |
Compatibility Testing Testing application/system to compatibility with various configuration, platforms and interface to other systems. | | | X | | |
Configuration Testing Testing systems ability to operate with different hardware. | | | X | | |
Compliance Testing Testing software to verify that it meets specific standards. | | | | X | |
| Error-Handling TestingTesting system's ability to handle erroneous transactions. | X | | X | X | |
(1 , 2) Manual-Support Testing List of manual activities in preparation for automated testing (i.e. script creation, data generation, etc). | | | | | X |
| Inter-Systems Testing | | X | | | |
Monkey Testing Set of data inputs utilized for software testing | | | | | X |
Exploratory Testing Simultanous adapting test case based on the previous system responses. | | | | | X |
Volume Testing Testing systems ability to process large volume (data chunk, data stream, transactions, etc). | | | X | | |
Scenario Testing Testing the system with realistic test cases that mimic problem domain. | | | | X | |
Graphical User Interface Testing Testing the degree in which the user interface meets the software requirement specification. | | | | | X |
Systems Testing System testing is parent umbrella for Functional, Performance, Stress, Configuration, Security, and Recovery testing. | | | X | | |
Alpha Testing Testing conducted as internal acceptance software testing by the software team/organization responsible for its creation. | | | | X | |
Beta Testing Testing conducted by user and at user site prior to classifying software as a production release. | | | | X | |
White-Box Testing Software test attempts to find system vulnerability by targeting specific parts of a system because of his/her knowlege of software internal metrics (maintainability index, cyclomatic complexity, depth of inheritance, class coupling, lines of code) | X | X | X | | |
Unit Testing Software test modules created by a developer to test other software code that satisfy software requirement specification. | X | | | | |
Static and Dynamic Analysis Distinquishing software testing stage for which it can be tested before or after it is executable. | | | | | X |
| Code CoverageThe degree in which the software logic has been tested. Code coverate includes: Statement, Decision, Condition, and Path coverage. | X | | | | |
Integration Testing Testing conducted to 1) detect errors at component interfaces, and 2) assymble sub-component into a complete system and test accordingly. Integration testing may employ Bottom-up or Top-Down testing strategy. | | X | | | |
Security Testing Testing the system that is related to availability, confidentiality, and system/data integrity. | | | X | | |
Mutation Testing Testing the software code that was explicitly modified | | | | | X |