Rostra

Rostra: A Framework for Detecting Redundant Object-Oriented Unit Tests Object-oriented unit tests consist of sequences of method invocations. Behavior of an invocation depends on the state of the receiver object and method arguments at the beginning of the invocation. Existing tools for automatic generation of object-oriented test suites, such as Jtest and JCrasher for Java, typically ignore this state and thus generate redundant tests that exercise the same method behavior, which increases the testing time without increasing the ability to detect faults. This paper proposes Rostra, a framework for detecting redundant unit tests, and presents five fully automatic techniques within this framework. We use Rostra to assess and minimize test suites generated by test-generation tools. We also present how Rostra can be added to these tools to avoid generation of redundant tests. We have implemented the five Rostra techniques and evaluated them on 11 subjects taken from a variety of sources. The experimental results show that Jtest and JCrasher generate a high percentage of redundant tests and that Rostra can remove these redundant tests without decreasing the quality of test suites.

This software is also peer reviewed by journal TOMS.


References in zbMATH (referenced in 10 articles )

Showing results 1 to 10 of 10.
Sorted by year (citations)

  1. Ghezzi, Carlo; Mocci, Andrea; Sangiorgio, Mario: Synthesis of infinite-state abstractions and their use for software validation (2014) ioport
  2. Aguirre, Nazareno M.; Bengolea, Valeria S.; Frias, Marcelo F.; Galeotti, Juan P.: Incorporating coverage criteria in bounded exhaustive black box test generation of structural inputs (2011) ioport
  3. Pasternak, Benny; Tyszberowicz, Shmuel; Yehudai, Amiram: GenUTest: a unit test and mock aspect generation tool (2009) ioport
  4. Arcuri, Andrea; Yao, Xin: Search based software testing of object-oriented containers (2008) ioport
  5. Zybin, R. S.; Kuliamin, V. V.; Ponomarenko, A. V.; Rubanov, V. V.; Chernov, E. S.: Automation of broad sanity test generation (2008)
  6. Simons, Anthony J. H.: Jwalk: a tool for lazy, systematic testing of Java classes by design introspection and user interaction. (2007) ioport
  7. Simons, Anthony J. H.: Jwalk: a tool for lazy, systematic testing of java classes by design introspection and user interaction (2007) ioport
  8. Xie, Tao; Notkin, David: Tool-assisted unit-test generation and selection based on operational abstractions (2006) ioport
  9. Păsăreanu, Corina S.; Pelánek, Radek; Visser, Willem: Concrete model checking with abstract matching and refinement (2005)
  10. Xie, Tao; Marinov, Darko; Schulte, Wolfram; Notkin, David: Symstra: A framework for generating object-oriented unit tests using symbolic execution (2005)