Greedy combinatorial test case generation using unsatisfiable cores

  • Akihisa Yamada
  • , Armin Biere
  • , Cyrille Artho
  • , Takashi Kitamura
  • , Eun-Hye Choi

Research output: Chapter in Book/Report/Conference proceedingConference proceedingspeer-review

Abstract

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.
Original languageEnglish
Title of host publicationProc. 31st IEEE/ACM Intl. Conf. on Automated Software Engineering (ASE'16),
EditorsSarfraz Khurshid, David Lo, Sven Apel
PublisherAMC
Pages614-624
Number of pages11
ISBN (Electronic)9781450338455
DOIs
Publication statusPublished - 2016

Fields of science

  • 102 Computer Sciences
  • 102001 Artificial intelligence
  • 102011 Formal languages
  • 102022 Software development
  • 102031 Theoretical computer science
  • 603109 Logic
  • 202006 Computer hardware

JKU Focus areas

  • Computation in Informatics and Mathematics

Cite this