Intelligent Software Testing with Multiple Learning Classifiers
Date Issued
2011
Date
2011
Author(s)
Jhan, Jhe-Jhang
Abstract
Testing is an essential process of software development. Along with the progress of scientific and technological development of hardware, software systems become larger and larger. It is time consuming to do software testing with manpower traditionally. Using machine learning in place of labor efforts is getting more and more attractive.
In this thesis, we present a multiple-classifier structure of software testing with machine learning algorithms including support vector machine (SVM), neural network (NN) and L*. The structure is composed of three phases. In the first phase, the structure uses some functions which can insert into user programs to collect useful information as our input data during program executions. Those input data, of course, could also be provided by users. In the second phase, we separate the input data into training data and testing data. The training data is used for building models and the testing data is for testing the models we build. The last phase is that we combine the results of models to generate a better result by using combinatorial functions.
We investigate how to use machine learning techniques to automatically construct test oracles for programs without reliance on explicit specifications, and experiment with two open-source benchmarks to compare the accuracy of different learning algorithms and the accuracy after using combinatorial functions in the end.
Subjects
software testing
machine learning
multiple classifier
SVM
NN
test oracle
Type
thesis
File(s)![Thumbnail Image]()
Loading...
Name
ntu-100-R98921077-1.pdf
Size
23.32 KB
Format
Adobe PDF
Checksum
(MD5):a99eb9746000d32e7f90deccb2f4ec3f
