𝔖 Bobbio Scriptorium
✦   LIBER   ✦

Using a neural network in the software testing process

✍ Scribed by Meenakshi Vanmali; Mark Last; Abraham Kandel


Publisher
John Wiley and Sons
Year
2002
Tongue
English
Weight
97 KB
Volume
17
Category
Article
ISSN
0884-8173

No coin nor oath required. For personal study only.

✦ Synopsis


Software testing forms an integral part of the software development life cycle. Since the objective of testing is to ensure the conformity of an application to its specification, a test "oracle" is needed to determine whether a given test case exposes a fault or not. Using an automated oracle to support the activities of human testers can reduce the actual cost of the testing process and the related maintenance costs. In this paper, we present a new concept of using an artificial neural network as an automated oracle for a tested software system. A neural network is trained by the backpropagation algorithm on a set of test cases applied to the original version of the system. The network training is based on the "black-box" approach, since only inputs and outputs of the system are presented to the algorithm. The trained network can be used as an artificial oracle for evaluating the correctness of the output produced by new and possibly faulty versions of the software. We present experimental results of using a two-layer neural network to detect faults within mutated code of a small credit approval application. The results appear to be promising for a wide range of injected faults.


πŸ“œ SIMILAR VOLUMES