NEDMCOFeb 13, 2020

Genetic Algorithms for Redundancy in Interaction Testing

arXiv:2002.05421v1
AI Analysis

This work addresses the cost of testing in non-deterministic environments for software engineers, but it is incremental as it builds on existing two-stage algorithms.

The paper tackles the problem of reducing the number of tests and computational time in interaction testing for large-scale software systems by incorporating redundancy into the model. The result shows that using a genetic algorithm with multiple stages reduces both the number of tests and generation time compared to existing techniques.

It is imperative for testing to determine if the components within large-scale software systems operate functionally. Interaction testing involves designing a suite of tests, which guarantees to detect a fault if one exists among a small number of components interacting together. The cost of this testing is typically modeled by the number of tests, and thus much effort has been taken in reducing this number. Here, we incorporate redundancy into the model, which allows for testing in non-deterministic environments. Existing algorithms for constructing these test suites usually involve one "fast" algorithm for generating most of the tests, and another "slower" algorithm to "complete" the test suite. We employ a genetic algorithm that generalizes these approaches that also incorporates redundancy by increasing the number of algorithms chosen, which we call "stages." By increasing the number of stages, we show that not only can the number of tests be reduced compared to existing techniques, but the computational time in generating them is also greatly reduced.

Foundations

The foundational work for this paper's niche, ranked by how specifically the neighbourhood builds on it — not by global fame.

Your Notes