Int J Performability Eng ›› 2021, Vol. 17 ›› Issue (1): 114-122.doi: 10.23940/ijpe.21.01.p11.114122

• Orginal Article • Previous Articles     Next Articles

Comparing Fault Detection Efficiencies of Adaptive Random Testing and Greedy Combinatorial Testing for Boolean-Specifications

Ziyuan Wanga*, Yanliang Zhanga, Peng Gaob, and Shiyong Shuangc   

  1. aSchool of Computer Science and Technology, Nanjing University of Posts and Telecommunications, Nanjing, 210023, China
    bPLA Strategic Support Force Information Engineering University, Zhengzhou, 450002, China
    cBeijing Jinghang Research Institute of Computing and Communications, Beijing, 100074, China
  • Submitted on ; Revised on ; Accepted on
  • Contact: * Corresponding author. E-mail address: wangziyuan@njupt.edu.cn
  • Supported by:
    the Foundation of Nanjing University of Posts and Telecommunications (NY219079)

Abstract:

Both random testing and combinatorial testing are input-domain testing techniques. Adaptive random testing, which is an improved version of random testing, selects a test case with more differences from all the existing test cases in each step. Greedy combinatorial testing generates test cases using greedy algorithms to cover more uncovered tuple-combinations of parametric values in each step. To compare fault detection efficiencies of the adaptive random testing technique and greedy combinatorial testing technique, we design an experiment on Boolean specifications that were extracted from the TCAS system. By analyzing fault detection ratios, f-measure values, and APFD values of the two testing techniques, experimental results show that: (1) if the number of test cases is relatively small, fault detection efficiencies of the two techniques are very close though adaptive random testing has a little advantage; (2) for an increase in the number of test cases, the fault detection efficiency of greedy combinatorial testing becomes gradually better.

Key words: input-domain testing, adaptive random testing, greedy combinatorial testing, fault detection efficiency