CS seminar series presents
Incorporating Test Case Design with Combinatorial
by Bestoun Al-Beywanee :
Thursday, January 12 at 14:00 in 205.
In recent years, configurable software systems have gained paramount importance in the market because of their ability to alter software behavior through configuration. Traditional test design techniques are useful for fault discovery and prevention but not for fault elimination because of the combinations of input components and configurations. We consider that all configuration combinations lead to exhaustive testing, which is impossible because of time and resource constraints. The number of test cases could be minimized by designing effective test cases that have the same effect as exhaustive testing. Strategies have been developed in the last 20 years to solve the aforementioned problem. Among these strategies, combinatorial testing strategies are the most effective in designing test cases for the problem. These strategies help search and generate a set of tests, thereby forming a complete test suite that covers the required combinations in accordance with the strength or degree of combination. This degree starts from two (i.e., d=2, where d is the degree of combinations). We consider that all combinations in a minimized test suite is a hard computational optimization problem because searching for the optimal set is a nondeterministic polynomial time (NP)-hard problem. Thus, searching for an optimum set of test cases can be a difficult task, and finding a unified strategy that generates optimum results is challenging. Two directions can be followed to solve this problem efficiently and to find a near-optimal solution. The first uses computational algorithms with a mathematical arrangement; the other uses nature-inspired meta-heuristic algorithms. This opens a new research direction which called search-based software engineering (SBSE). This seminar gives an extensive review on the recent research trends, and challenges in this direction.