Greedy combinatorial test case generation using unsatisfiable cores
2016 (English)In: ASE 2016 - Proceedings of the 31st IEEE/ACM International Conference on Automated Software Engineering, Association for Computing Machinery (ACM), 2016, 614-624 p.Conference paper (Refereed)
Combinatorial testing aims at covering the interactions of parameters in a system under test, while some combinations may be forbidden by given constraints (forbidden tuples). In this paper, we illustrate that such forbidden tuples correspond to unsatisfiable cores, a widely understood notion in the SAT solving community. Based on this observation, we propose a technique to detect forbidden tuples lazily during a greedy test case generation, which significantly reduces the number of required SAT solving calls. We further reduce the amount of time spent in SAT solving by essentially ignoring constraints while constructing each test case, but then "amending" it to obtain a test case that satisfies the constraints, again using unsatisfiable cores. Finally, to complement a disturbance due to ignoring constraints, we implement an efficient approximative SAT checking function in the SAT solver Lingeling. Through experiments we verify that our approach significantly improves the efficiency of constraint handling in our greedy combinatorial testing algorithm.
Place, publisher, year, edition, pages
Association for Computing Machinery (ACM), 2016. 614-624 p.
IEEE ACM International Conference on Automated Software Engineering, ISSN 1527-1366
Combinatorial testing, SAT solving, Test case generation
IdentifiersURN: urn:nbn:se:kth:diva-199093DOI: 10.1145/2970276.2970335ISI: 000390237000060ScopusID: 2-s2.0-84989163860ISBN: 978-145033845-5OAI: oai:DiVA.org:kth-199093DiVA: diva2:1062025
31st IEEE/ACM International Conference on Automated Software Engineering, ASE 2016, Singapore Management UniversitySingapore, Singapore, 3 September 2016 through 7 September 2016
QC 201701172017-01-042016-12-282017-01-17Bibliographically approved