A Binary Classifier for Test Case Feasibility Applied to Automatically Generated Tests of Event-Driven Software
dc.contributor.advisor | Memon, Atif | en_US |
dc.contributor.author | Robbins, Bryan Thomas | en_US |
dc.contributor.department | Computer Science | en_US |
dc.contributor.publisher | Digital Repository at the University of Maryland | en_US |
dc.contributor.publisher | University of Maryland (College Park, Md.) | en_US |
dc.date.accessioned | 2016-06-22T05:50:29Z | |
dc.date.available | 2016-06-22T05:50:29Z | |
dc.date.issued | 2016 | en_US |
dc.description.abstract | Modern software application testing, such as the testing of software driven by graphical user interfaces (GUIs) or leveraging event-driven architectures in general, requires paying careful attention to context. Model-based testing (MBT) approaches first acquire a model of an application, then use the model to construct test cases covering relevant contexts. A major shortcoming of state-of-the-art automated model-based testing is that many test cases proposed by the model are not actually executable. These \textit{infeasible} test cases threaten the integrity of the entire model-based suite, and any coverage of contexts the suite aims to provide. In this research, I develop and evaluate a novel approach for classifying the feasibility of test cases. I identify a set of pertinent features for the classifier, and develop novel methods for extracting these features from the outputs of MBT tools. I use a supervised logistic regression approach to obtain a model of test case feasibility from a randomly selected training suite of test cases. I evaluate this approach with a set of experiments. The outcomes of this investigation are as follows: I confirm that infeasibility is prevalent in MBT, even for test suites designed to cover a relatively small number of unique contexts. I confirm that the frequency of infeasibility varies widely across applications. I develop and train a binary classifier for feasibility with average overall error, false positive, and false negative rates under 5\%. I find that unique event IDs are key features of the feasibility classifier, while model-specific event types are not. I construct three types of features from the event IDs associated with test cases, and evaluate the relative effectiveness of each within the classifier. To support this study, I also develop a number of tools and infrastructure components for scalable execution of automated jobs, which use state-of-the-art container and continuous integration technologies to enable parallel test execution and the persistence of all experimental artifacts. | en_US |
dc.identifier | https://doi.org/10.13016/M2K189 | |
dc.identifier.uri | http://hdl.handle.net/1903/18233 | |
dc.language.iso | en | en_US |
dc.subject.pqcontrolled | Computer science | en_US |
dc.subject.pquncontrolled | Automation | en_US |
dc.subject.pquncontrolled | Graphical User Interfaces | en_US |
dc.subject.pquncontrolled | Logistic Regression | en_US |
dc.subject.pquncontrolled | Software Engineering | en_US |
dc.subject.pquncontrolled | Software Testing | en_US |
dc.title | A Binary Classifier for Test Case Feasibility Applied to Automatically Generated Tests of Event-Driven Software | en_US |
dc.type | Dissertation | en_US |
Files
Original bundle
1 - 1 of 1
Loading...
- Name:
- Robbins_umd_0117E_16968.pdf
- Size:
- 3.28 MB
- Format:
- Adobe Portable Document Format