Among all types of functional testing forright takes the leading position, since the program should work first of all correctly, otherwise from the ease of use, security and sufficient speed there will be absolutely no sense. In addition to owning various testing techniques, each specialist should understand how to properly test to get the most effective result.
Functional testing: where to direct the main effort?
- for modular and system testing;
- to check the "white" or "black" box;
- manual testing and automation;
- for testing new functionality or regression testing;
- to "negative" or "positive" tests.
Between all these activities it is important to find the right path that will be "average" to balance efforts, taking advantage of each of the directions to the maximum.
The software is tested in various ways, one of which is testing on a "black box" basis or with data management.
The program in this case is represented from the point of viewview of the "black box", and the check is carried out to find out the circumstances in which the behavior of the program will not meet the specification. All errors are determined by means of data management, which is done through exhaustive testing, that is, using all possible types of data.
If for the program the execution of the command depends onevents preceding it, then you need to check all possible sequences. It is quite obvious that for most cases it is simply impossible to perform exhaustive testing, therefore, an acceptable or reasonable option is often chosen, limited to running the program on a small subset of all input data. This option completely guarantees the absence of deviations from the specifications.
Functional testing involves choosing the right test. At the same time, it is customary to distinguish between such methods of forming sets for them:
- analysis of boundary values;
- an equivalent partition;
- assumption of errors;
- analysis of the relationship between causes and effect.
You can consider each of them separately.
Analysis of boundary values. By boundary values it is customary to mean those located on the boundaries of equivalence classes. In such places, it is more likely to detect an error. The use of such a method requires the specialist to have a certain creativity, as well as specialization in this particular problem under consideration.
An equivalent partition. All possible sets of input parameters are divided into several equivalence classes. Data are combined according to the principle of detecting similar errors. It is considered that if a set of one class detects an error, then equivalent ones will also point to it. Functional testing by this method is carried out in two stages: on the first stage, equivalence classes are made, and on the second one special tests are already formed.
Analysis of the relationship between cause and effect. The system can select tests with high efficiency due to such tests. In this case, as a reason, a separate input condition is accepted, and as an effect, an output condition is seen. The method is based on the idea of assigning all kinds of causes to certain consequences, that is, on the clarification of those most causal relationships. The testing of the software product is carried out in several stages, resulting in a list of causes and consequences.
</ p>