Search-based Software Engineering

Optimization Problems Learning and Model-Fitting Problems

1. Automated Software Testing

In Automated Software Testing, the main goal is to generate a test suite that thoroughly tests the Class-Under-Test (CUT). It has become an active research topic in software engineering in recent years, with a variety of techniques developed by academics and industry practitioners. However, we still lack precise knowledge of what makes a particular testing technique effective on a given piece of software. Through the instance space shown here, we analyze the performance of six widely used Automated Testing Techniques on 1084 CUTs and identify the features of the CUT which impact the performance of these portfolio algorithms. Moreover, we identify similarities and differences between CUTs, providing an understanding of the level of difficulty, bias and diversity of the commonly used automated testing benchmarks.

Research Publications Downloads Instance Space Analysis
Neelofar, Muñoz, M. A., Smith-Miles, K. A. and Aleti, A.“Identifying the Strengths and Weaknesses of Automated Software Testing Techniques”, (under review)

Oliveira, C., Aleti, A., Grunske, L., & Smith-Miles, K. (2018). Mapping the effectiveness of automated test suite generation techniques. IEEE Transactions on Reliability, 67(3), 771-785.
Code for feature selection and test generation
Optimization Problems Learning and Model-Fitting Problems