Conditions for testing

Lecture



In the article “Quality Assurance. Quality control. Testing ”, it was proposed, based on the survey results, the definition of the concept of software testing:

Software Testing is one of the techniques of quality control and includes activity on job scheduling (Test Management), test design (Test Design), Test Execution, and Test Analysis.

I bring to your attention a study on the " necessary and sufficient conditions for testing ."

Consider the definitions of the required concepts:

  • The necessary conditions for the validity of the statement A are conditions, without which A cannot be true.
  • Sufficient are those conditions, in the presence (fulfillment, observance) of which Assertion A is true.

Let's start with the necessary conditions. It is obvious that testing is not possible without a test object, hence we get the first condition: the presence of a test object available for testing. Further, in order for the testing to take place, we need a performer, which means that the second necessary condition is the presence of the performer , and they can be a person or a machine, or a combination of person + machine.

We proceed to the definition of sufficient conditions. Since not every action performed on a program, in order to obtain the expected behavior, is testing, the question arose that the goal itself, namely: testing, is one of the sufficient conditions. Taking as a basis the fact that having a test plan directly indicates the intention to test, we find that the test plan is one of the sufficient conditions.

During testing, a person or a machine will have to perform some actions to check the real and expected behavior of the program. Hence, the presence of test cases / tests is also a sufficient condition.

To confirm that testing has occurred, we need a report on the results. As the saying goes: “there is a report - there is testing, there is no report - there is no testing”. So, to confirm that testing took place, a report on the results of testing should be generated.

Total we have the following necessary and sufficient conditions for testing:

Prerequisites :

  1. Availability of test facility available for testing
  2. Existence of the contractor (s) (depending on the type of tests conducted, it can be either a person or a machine or a combination of person + machine)
Sufficient conditions :
  1. Availability of test facility available for testing
  2. Existence of the contractor (s) (depending on the type of activity at different phases, it can be either a person or a machine or a combination of person + machine)
  3. Availability test plan
  4. Availability of test cases / tests
  5. Availability of a report confirming the fulfillment of the tasks and the achievement of the objectives for testing the object

Let us return to the proposed definition of software testing and consider whether it does not contradict the above conditions. As far as can be judged, everything converges: the presence of a test plan speaks about activities in the field of planning, test cases and tests — about the design, the contractor — about the execution of tests, the presence of a report indicates an analysis of the results obtained.


Comments


To leave a comment
If you have any suggestion, idea, thanks or comment, feel free to write. We really value feedback and are glad to hear your opinion.
To reply

Quality Assurance

Terms: Quality Assurance