No votes yet.
Please wait...

Suppose that the software product being tested, in accordance with the specification, must be run in a variety of network configurations, uses several different client machine configurations, must be run on different operating systems and be accessible from different browsers. After you explore the number of possible hardware configurations, for example, the following combinations can be obtained:

  • 5 network configurations
  • 10 combinations of browsers and operating systems
  • 20 combinations of client configurations (CPU, hard drives, video adapters and peripherals)

Thus, the number of possible test configurations is 5 хЮх20 = 1000. If you expect that two test specialists can conduct scheduled system tests on the same configuration, then to complete the testing of all configurations, you will need 240,000 man-hours, or 125 person-years! If the necessary funds and a large number of testing specialists are not available, or if there is simply not enough time for this testing, then it makes no sense to conduct it. Are you eager to meet needs of your customers and release your IT products within budget? If so, please, be ready to deal with offshore software qa company to identify and address points of failure and areas of risks at affordable price.

There is the basic principle of the software testing, which says: it is impossible to conduct exhaustive tests on the program, namely no mobile, web or desktop app can be tested exhaustively. The same is true in cases when it is necessary to test several combinations of possible system configurations: it is impossible to fully test absolutely all system configurations. The main way is to set the appropriate priorities for the configurations. And then it is already possible to decide which configurations should be fully debugged, and which ones need to be only partially tested.

Assigning priorities to configurations usually depends on the following factors:

  • Freq of use: how many instances of the specified configuration will most likely be used?
  • The risk of system failure: are there any reliable configurations for important customers?
  • The probability of failure of the system: have past failures of specific configurations been recorded?

After you decide to perform partial or complete testing on the configuration, the next step is to determine which tests should be run on configurations that are subject to partial testing.


Comments are closed.