Software Testing Glossary


Behavior is a blend of preconditions, expected result and actual result for function of the application. To describe a complete specification of functions one should use several behaviors.

Benchmark Testing

Benchmark Testing is a part of SDLC which involves both developers and database administrators (DBAs) to determine current performance and make changes to improve the performances. Benchmarks should imitate particular part of workload. There are different parts of software that should be benchmarked to make performance changes: SQL Queries, SQL Indexes, SQL Procedures, SQL Triggers, Table Space Configurations, Hardware Configurations, Application Code, Networks, Firewalls. Benchmark testing is performed under the same parameters because the results should be compared. Characteristics of Benchmarks: repeatable tests, the same environmental conditions, no other active applications, all the specifications should be kept.

Beta Testing

Beta Testing is an intensive use of the almost ready application to find and fix as many bugs as possible. It’s the next stage after alpha testing. The application is tested by the independent testing team. Such kind of application is called beta-version. Nowadays beta versions of different applications can be offered to an open public, but the developer doesn’t guarantee the absence of the bugs.

Beta Testing Companies

The main activity of beta testing companies is to test the working software versions with a full functionality in order to assess the capabilities and stability of the software program performance from the perspective of the end users. In this case, beta-testers are the usual people who have experience in working with such programs.

Big-Bang Testing

Big-Bang Testing is a kind of integration testing that links all the units at once and results in a complete system. It’s good for small systems, but is not favorable for the large ones as it’s difficult to determine the location of a bug if it’s found. This kind of testing has some disadvantages: bugs are found on the late stage, difficult to find location of the bug, ability to miss critical bugs, difficult to cover all the test cases.

Binary Portability Testing

Binary Portability Testing is a kind testing that is performed to check the portability across different platforms and environments. This kind of testing is performed to confirm an Application Binary Interface (ABI) specification. Binary Portability Testing is performed on different types of OS, such as Windows, Linux, Mac, Android, Solaris, Java, etc.

Black Box Testing

Black Box Testing is a kind of testing that is performed without knowledge about internal structures or workings of the application. This testing can be used on all the testing levels such as unit, integration, system and acceptance. There are different techniques of black box testing for example: all-pair testing, decision table testing, equivalence portioning, etc.
One of the advantages of this type of testing is that it’s unbiased as development team and testing team work independently. The application is tested form the point of view of end-user. Tester doesn’t need any programming knowledge.

Block Matching

Block Matching is a kind of automated logic that is used to find similar data. It also gives the possibility to treat the repeated elements right without coding. There are different algorithms of block matching: Exhaustive Search or Full Search, Three Step Search, Two Dimensional Logarithmic Search, New Three Step Search, Simple and Efficient Search, Four Step Search, Diamond Search, Adaptive Rood Pattern Search.

Bottom Up Testing

Bottom Up Testing is a kind of integration testing that goes from lowest levels to the highest ones, that helps to make testing of the higher levels easier. In such kind of testing the higher components are more important. Low components are usually replaced by drivers while testing the high ones.