Modern large-scale software systems are highly configurable requiring a large number of test cases to be implemented and revised for testing different system configurations. This requires a lot of time and effort to test the software, which is not feasible due to budget constraints (e.g., limited time available for testing). Thus, this thesis proposes a set of methods based on evolutionary computation for cost-effective testing to address the needs of our industrial partner, Cisco Systems Norway for testing their video conferencing systems.
Cost-effective testing in Cisco can be formulated into four major problems: 1) test case prioritization (TCP) to cost-effectively prioritize the existing test cases, 2) test case selection (TCS) to cost-effectively select a subset of test cases based on user preference for different objectives, 3) test case implantation (TCI) to modify existing test cases to cost-effectively test the untested configurations, and 4) dynamic test case prioritization (DTP) to dynamically prioritize test cases based on runtime execution results in order to further improve the results of test case prioritization.
To tackle the above-mentioned challenges, this thesis proposes a set of methods based on evolutionary computation through seven papers (four conferences sand three journals). It includes a: 1) Search-based prioritization approach to tackle TCP; 2) Search-based test case selection approach to select test cases within a time budget to address TCS; 3) Search-based test case implantation approach to automatically analyze and modify existing test cases to address TCI; 4) Rule mining and search-based approach to tackle DTP. In addition, this thesis proposes two cluster-based genetic algorithms to address the shortcomings of the current state-of-the-art search algorithms for multi-objective test optimization. The results of empirical evaluations showed that the proposed methods could significantly improve the performance for all the identified challenges as compared with the state-of-the-art, and thus, help in cost-effective testing.
The thesis is written within the field of Software Engineering. The work has been conducted at Simula Research Laboratory.
Prior to the defense,Dipesh Pradhan presented histrial lectureAnalytics and Predictive Modeling for Software Quality.
The adjudication committee
Professor Robert Feldt, Department of Computer Science and Engineering, Chalmers University of Technology, Sweden
Associate Professor Shin Yoo, Korea Advanced Institute of Science and Technology, South Korea
Associate Professor Sabita Maharjan, Department of Informatics, University of Oslo
Professor Tao Yue, Department of Informatics, University of Oslo /Simula Research Laboratory
Postdoc Shuai Wang, Simula Research Laboratory
Senior researcher Shaukat Ali, Simula Research Laboratory