Algorithm or Representation? An Empirical Study on How SAPIENZ Achieves Coverage

Abstract

Testing is a very important and expensive part of developingAndroid applications. Several tools for automatically testing Android applications have been proposed. In particular, Sapienz is a searchbased tool that has been recently deployed in an industrial setting. Although it has been shown that Sapienz outperforms several stateof-the-art tools, it is still to be seen what features of Sapienz impact the most on its effectiveness. We conducted an extensive empirical study where we compare the impact of the search algorithm and the usage of motif genes, a more compact representation of individuals. Our empirical study shows that the usage of motif genes improves statement coverage both for evolutionary algorithms and random approaches. In particular, our study shows that although the evolutionary algorithm used by Sapienz (i.e., NSGA-II) outperforms other search algorithms, it is not statistically distinguishable from Random Search. These facts cast doubts about the use of evolutionary algorithms in the context of Android test generation and suggest that motif genes have a great impact on the overall effectiveness.

Publication
ACM/IEEE 1st International Conference on Automation of Software Test (AST 2020)