Budget-Aware Random Testing with T3: Benchmarking at the SBST2016 Testing Tool Contest

Random testing has the advantage that it is usually fast. An interesting use case is to use it for bulk smoke testing, e.g. to smoke test a whole project. However, on a large project, even with random testing it may still take hours to complete. To optimise this, we have adapted an automated random testing tool called T3 so that it becomes aware of the time budget we set for a given target class. Test suites are now generated incrementally, and their refinements are adaptively scheduled towards maximising the coverage, given the remaining time. This paper presents an evaluation of the performance of this adaptation, using the benchmark provided by the SBST 2016 Java Unit Testing Tool Contest.

[1]  Tanja E. J. Vos,et al.  Trace-based Reflexive Testing of OO Programs with T2 , 2008, 2008 1st International Conference on Software Testing, Verification, and Validation.

[2]  I. S. W. B. Prasetya T3, a Combinator-Based Random Testing Tool for Java: Benchmarking , 2013, FITTEST@ICTSS.

[3]  Hiroyuki Sato,et al.  GRT at the SBST 2015 Tool Competition , 2015, 2015 IEEE/ACM 8th International Workshop on Search-Based Software Testing.

[4]  Tanja E. J. Vos,et al.  Unit Testing Tool Competition -- Round Three , 2015, 2015 IEEE/ACM 8th International Workshop on Search-Based Software Testing.

[5]  I. S. W. B. Prasetya T3i: a tool for generating and querying test suites for Java , 2015, ESEC/SIGSOFT FSE.

[6]  Tanja E. J. Vos,et al.  Unit testing tool competition: round four , 2016, SBST@ICSE.

[7]  I. S. W. B. Prasetya T3: Benchmarking at Third Unit Testing Tool Contest , 2015, 2015 IEEE/ACM 8th International Workshop on Search-Based Software Testing.

[8]  René Just,et al.  Unit Testing Tool Competition — Round Four , 2016, 2016 IEEE/ACM 9th International Workshop on Search-Based Software Testing (SBST).

[9]  Stephen McCamant,et al.  The Daikon system for dynamic detection of likely invariants , 2007, Sci. Comput. Program..

[10]  Michael D. Ernst,et al.  Randoop: feedback-directed random testing for Java , 2007, OOPSLA '07.

[11]  Gordon Fraser,et al.  EvoSuite: automatic test suite generation for object-oriented software , 2011, ESEC/FSE '11.

[12]  Yann-Gaël Guéhéneuc,et al.  Instance Generator and Problem Representation to Improve Object Oriented Code Coverage , 2015, IEEE Transactions on Software Engineering.