Graduation Year


Document Type




Degree Granting Department

Computer Science

Major Professor

Abraham Kandel, Ph.D.

Committee Member

Dewey Rundus, Ph.D.

Committee Member

Miguel Labrador, Ph.D.


Automated Oracle, Regression Testing, ROC Analysis


It is very important that the software being delivered to the user is reliable and fault free. This makes software testing one of the most important phases in the software development life cycle. The problem being faced by everyone is the time it takes to test the software, which is normally huge. An important part of the software testing process is running and evaluating test scenarios. The objective of this part is to evaluate how well the application under test conforms to its specifications. One of the ways to achieve this is to generate the test cases and make use of the test oracle (a human expert) to determine whether a given test case exposes a fault. This procedure consumes a lot of time. Using an automated oracle can contribute towards the reduction in software testing time which helps in the reduction of the cost of the testing process.

The use of Artificial Neural Networks (ANN) and Info-Fuzzy Networks (IFN) for test case selection and evaluation has already been explored. In this thesis these two approaches are compared on their use as an automated oracle.

An ROC Analysis is done to compare the two approaches. The execution times of both the approaches are also compared. For comparison, three applications have been used. The basic methodology behind the use of IFN or ANN is to train the network on randomly generated test cases executed with a stable version of the software. This trained network is then used as an oracle for evaluating the correctness of the output produced by new and possibly faulty versions of the stable software. The outputs from the oracle i.e. IFN or ANN and faulty versions of the software system are compared with that of the original version to evaluate the outputs generated by new version of the software.