Test type・Normal test, abnormal test and semi-normal test

23/09/2020Test qualityy

The semi-normal test is the name of the test that was considered from the creation of the source code.

We often use the names normal test , semi-normal test , and abnormal test as test names. The name of this test is the name given from the design of the software and the creation of the source code. Since both the semi-normal test and the abnormal test are tests that confirm the software operation when an error occurs. They may be integrated into the abnormal test, but recently, the semi-normal test and the abnormal test have been performed. Since the number of cases where the test is clearly divided is increasing, I think that it will be easier for you to understand the quality of the test if you consider the test by separating the quasi-normal system from the abnormal system. Father Gutara has considered the test separately for the semi-normal test and the (true) abnormal test.

The normal test is a test to confirm the operation of the normal code that operates as designed when normal input is given to the software . The semi-normal test is a test to confirm the operation of the semi-normal code that handles the error created to deal with the error state when the error state assumed at the time of design occurs . And the (true) abnormal test is a test to confirm the operation of the abnormal code so that the software continues to operate even when an unexpected abnormal situation that was not considered at the time of design occurs .

In embedded systems, semi-normal test and (true) abnormal test account for 80%.

Embedded software is generally used to control devices, so it is designed to continue operating without problems even if there are errors on the assumption that there are various errors such as hardware malfunctions and communication errors . Since many semi-normal and abnormal codes are written to deal with various errors, there are far more semi-normal and abnormal codes than normal codes. Roughly speaking, the normal code is 20%, the semi-normal code is 70%, and the abnormal code is 10%. Therefore, the ratio of the normal test, the semi-normal test, and the abnormal test is also about this ratio.

Even when actually designing software, first consider the operation of the normal mode, and then identify what kind of error may occur. If the error that may occur in the production operating environment is thoroughly identified by identifying this error, the processing to deal with the error is incorporated in the software, so it is stable even in various situations. It will be highly reliable and highly available software that will continue to operate . The robustness of the software is determined by whether or not it is possible to implement what kind of processing is to be performed in the source code when an unexpected situation still occurs even after performing this identification .

Semi-normal and (true) anomalous tests confirm reliability, availability, and robustness

The invisible quality of the software , such as its stability , robustness, and availability , is determined by how well the semi-normal code and the abnormal code are designed and implemented . Therefore, the quantity and quality of this semi-normal test and abnormal test are very important in embedded software testing.

I explained that the semi-normal test is an error processing test that was conceived at the software design stage, and the abnormal test is a test for processing an abnormal state that was not considered at the design stage. increase.

It is a little difficult to understand what is a semi-normal test and what is a (true) abnormal test unless you are accustomed to it, so in the next article, communication protocol processing, state transition processing, hardware control I will introduce it a little more concretely by using the three examples of.

Next : Test type・Semi-normal test in communication protocol processing
Back : Test type・Unit tests, integration test and system test
Return to :  Testing is the only way to guarantee software quality