Computer Science and Engineering, Department of

 

Date of this Version

2013

Citation

Software Testing, Regression Testing, Test Suite Augmentation, Test Case Generation

Comments

A DISSERTATION Presented to the Faculty of The Graduate College at the University of Nebraska In Partial Fulfillment of Requirements For the Degree of Doctor of Philosophy, Major: Computer Science, Under the Supervision of Professor Gregg Rothermel. Lincoln, Nebraska: May, 2013

Copyright (c) 2013 Zhihong Xu

Abstract

Test suite augmentation techniques are used in regression testing to identify code elements affected by changes and to generate test cases to cover those elements. Whereas methods and techniques to find affected elements have been extensively researched in regression testing, the problem of generating new test cases to cover these elements cost-effectively has rarely been studied. We believe that reusing existing test cases will help us achieve this task. This research develops test suite augmentation techniques that reuse existing test cases to automatically generate new test cases to cost-effectively cover affected elements. We begin by using two dynamic test case generation techniques for augmentation, involving concolic testing and genetic algorithms. Then we investigate other factors, which we believe have an impact on the test suite augmentation, with the two techniques both considered. After this, we present a hybrid algorithm for test suite augmentation, that combines multiple approaches while accounting for the effects of other factors. Finally, we apply the test suite augmentation concept to software product line testing to help generate test cases for software product lines.

Adviser: Gregg Rothermel