22 test types that need to be considered in the test design - black box test: not based on any knowledge of internal design and code, but based on demand and functionality.
White box test: Based on the internal logic knowledge of application code, the test is based on overwriting all code, branch, path, and conditions.
Unit test: Tests for the most small scale; test a function or code block. Typically made by programmers instead of testers because it needs to know detail knowledge of internal programming and encoding. This work is not easy, unless the application has a good architecture; it may also be necessary to develop test drive modules or test kits.
Cumulative Comprehensive Test: After a new function increases, the continuous test made by the application system. It requires different forms of functionality of the application system to be independent to work before all systems can be completed, or those test drivers have been developed; this test can be done by programmers or testers.
Integrated test: The joint test of the various components of an application system to determine if they can work together. The components can be code blocks, separate applications, clients or server-side programs on the network. This type of test is particularly related to the customer server and distributed system.
Functional test: black box test method for testing the functional requirements of the application system. Such tests should be done by testers, which does not mean that programmers do not have to check whether their code can work (naturally he can use at all phases of test).
System Test: Based on the black box test of the overall demand manual of the system; all combined parts of the system should be covered.
End-to-end test: Similar endpoints of the "Macro" endpoint of the test level; all tests involving the entire application system environment in a real world use. For example, with database dialog, communication, or with external hardware, application system, or appropriate system dialogue.
Improve test: Typically refer to an initialized testing to determine whether a new software version test is sufficient to perform the next big test effort. For example, if a new version of the software conflicts every 5 minutes, the system is trapped in the quagmi, indicating that the software is not "sound", and there is currently no further testing conditions.
Failure test: Software or environmental repair or correction "re-test". It may be difficult to determine how many times you need again. Especially at the end of the proximity development cycle. Automated test tools are especially useful for such tests.
Accept the test: Based on the final test of the specifications of the customer or end user, or after the user's use, see if the software meets the customer requirements.
Load Test: Test an application under heavy load, such as testing a Web site under a large amount of load, when the system's response degrades or fail.
Forced Test: Termatic term often used in alternating load and performance testing. Also used to describe tests such as system function testing in extricted heavy loads, such as an action or input a large amount of repetition, a large amount of data, a large number of complex queries for a database system.
Performance test: Terms that are often used in alternately and forced tests. Ideally "Performance Test" (and other types of tests) should be defined in the test plan in the demand document or quality assurance.
Availability Test: Tests for "User Friendly". Obviously this is subjective and will depend on the target end user or customer. Users of user interviews, investigations, and other technologies can be used. Programmers and testers are usually not suitable for useful testers.
Installation / Uninstall Test: Test of all, partial or upgrading the software for the software.
Recovery test: Testing a system can recover well from the following disasters, such as problems with system crash, hardware damage or other catastrophic issues.
Safety Test: How to test the system to prevent access or deliberate destruction of unauthorized internal or external users. This may require complex test technology.
Compatible test: Test software is in a specific hardware / software / operating system / network.
Comparative test: Comparison testing with competition partners, such as weaknesses, advantages, or strengths.
Alpha Test: Test of the application system when the system development is completed; after the test, there will still be a small amount of design changes. This test is generally completed by end users or other personnel, and cannot be done by programmers or testers. Beta Test: Tests made when developing and testing, and ultimate errors and problems need to be found before the final issue. This test is generally completed by end users or other personnel, and cannot be done by programmers or testers.