Loading

Special Value Testing


Testing software and program applications is really hassle free nowadays. There are innumerable options in testing techniques to suit various demands of clients. However, selecting a particular technique to test your software or application can be challenging as well as confusing. To avoid this difficulty, it is essential to be aware of the benefits, limitations, types and other necessary information about the testing technique.

Special Value Testing is one such testing technique, which aims at fulfilling all your testing needs effortlessly. It is executed by expert testers who go through each and every aspect of the program and use their domain knowledge to devise test cases. This type of functional testing is highly popular and provides most accurate results. Therefore, to help you know more about this flourishing and effective type of testing, here is a detailed analysis of Special Value Testing.

What is Special Value Testing?

Identical to any other software testing techniques, Special Value is defined and applied form of Functional Testing, which is a type of testing that verifies whether each function of the software application operates in conformance with the required specification. Each and every functionality of the system is tested by providing appropriate input, verifying the output and comparing the actual results with the expected results.

Special Value Testing, is probably the most extensively practiced form of functional testing which is most intuitive, and least uniform. This technique is performed by experienced professionals who are experts in this field and have profound knowledge about the test and the data required for it. They continuously participate and apply tremendous efforts to deliver appropriate test results to suit the client’s requested demands.

Furthermore, it utilizes domain knowledge and engineering judgment about program’s “soft spots” to devise test cases. Even though special value testing is very subjective in the generation of test cases, it is often more effective on revealing faults in a software or a program.

Why Special Value Testing?

Special Value testing has several reasons which makes it the best option for testing programs, like:

  • The testing executed by Special Value Testing technique is based on past experiences, which validates that no bugs or defects are left undetected.
  • Moreover, the testers are extremely knowledgeable about the industry and use this information while performing Special Value testing.
  • Another benefit of opting Special Value Testing technique is that it is Ad-hoc in nature. There are no guidelines used by the testers other than their “best engineering judgment”.
  • The most important aspect of this testing is that, it has had some very valuable inputs and success in finding bugs and errors while testing a software.

Disadvantages Of Special Value Testing:

Special Value Testing can be very dependent on the abilities of the tester. However, finding industry experts and knowledgeable testers may be expensive as well as difficult, which is the only negative feature or drawback of this type of testing.

Is Special Value Testing a extension of Boundary Value Analysis?

Special Value Testing is an extension of Boundary Value Analysis testing (Input Domain Testing). Here, test cases are generated using the extremes of the input domain. As suggested by its name, Boundary Value testing technique is used to identify errors and bugs on the boundary rather than finding those which exists in the centre of the input data. With the exception of Special Value Testing, the test methods based on the boundary values of a program are mostly rudimentary.

Example of Boundary Value Analysis:

Consider a printer that has an input option of the number of copies to be made, from 1 to 99. To apply boundary value analysis, we will take the minimum and maximum (boundary) values from the valid partition (1 and 99 in this case) together with the first or last value respectively in each of the invalid partitions adjacent to the valid partition (0 and 100 in this case).

What is Boundary Value Analysis Testing?

Boundary Value analysis (BVA) is based at the boundaries between partitions. It include both valid boundaries that are in valid partitions, as well as invalid boundaries that have invalid partitions.

  • The extreme ends like Start- End, Lower- Upper, Maximum-Minimum, Just Inside-Just Outside values are called boundary values and the testing is called "boundary testing".
  • Also, the basic idea in boundary value testing is to select input variable values at their:
    1. Minimum.
    2. Just above the minimum.
    3. A nominal value.
    4. Just below maximum.
    5. Maximum.

Furthermore, there are two independent considerations that apply to input domain testing. First questions the testers concern about invalid values of variables; whereas, the second consideration checks whether we make the single fault assumption common to reliability theory. This assumes that the faults are due to incorrect values of a single variable.

Therefore, taken together, these two considerations have following extensions of Boundary Value Testing which also include Simple Value Testing:

  • Robust Boundary Value Testing:

    This is a simple extension of Boundary Value Analysis where two more values are added per variable, max+ and min- (little larger than max and little smaller than min). The expected output is usually an error message which is provided while the system is recovering. Implementing these test cases may not be possible.

  • Worst case Boundary Value Testing:

    In Worst Case Boundary Value testing more than one variable has an extreme value. Furthermore, it follows a generalisation pattern and is more thorough than boundary value analysis.

  • Robust Worst-case Boundary Value Testing:

    This type of testing adds the values max+ and min- to the possible variables values.

  • Simple Value Testing:

    As discussed above, Simple Value Testing is the most widely practised form of functional testing, wherein testers use their expert knowledge of the industry to get the best results in limited period of time.

Limitations of Boundary Value Analysis:

A testing technique may be full of numerous advantages and benefits. However, one should always keep a track of its limitations to get a thorough understanding of a particular test. Similarly, following are some of the limitations of Boundary Value Analysis Testing:

  1. Boundary Value Analysis works well when the program to be tested is a function of several independent variable bounded physical qualities.
  2. It selects test data with no consideration of the function of the program, nor of the semantic meaning of the variables.
  3. The difference between physical and logical type of variables can also be distinguished.
    • Example: temperature, pressure speed, PIN numbers, telephone numbers, and others.

Conclusion:

A variation of the Boundary Value Analysis and the most widely practised form of functional testing, Special Value testing is the best option for testing program or a software. This “ad-hoc” approach of testing occurs when the testers use their domain knowledge or experience with similar programs or information about “soft spots” to devise test cases. While subjective it can be extremely fruitful in detecting errors and defects as it also considers the past.