Wiki

Clone wiki

t3 / Home

#T3: automated unit testing tool for Java

T3 is a random-based automated unit testing tool to test Java classes. Given target class C to test, it generates random sequences of calls to the methods of C. It is fast, and is able to generate a large amount of test sequences in just few seconds. Users can express specifications as either in-code assertions, or as external queries on generated test-suites (this needs T3i).

T3 is the successor of T2, but now it also comes with a powerful Groovy front-end T3i.

Features:

  • Sequence-based testing: it does not test a method individually, but instead generate sequences of method calls to trigger interactions between methods of the target class.
  • Generated test suite can be saved and replayed.
  • A combinator-based approach to compose custom value/object generators, ala QuickCheck.
  • It can be run from the command line, or called as an API from a JUnit test class.

The front-end T3i offers additional features:

  • We can do interactive testing through Groovy interactive shell.
  • Provide a convenient way to configure T3, including specifying custom value/object generators.
  • We can experiment with different configurations to generate multiple suites; combine them, filter them, and combine them again.
  • We can query generated test suites for Hoare triples, LTL formulas, or algebraic formulas.

T3 needs Java 8, and T3i also needs Groovy at least 2.3.

###License

GPL version 3.

###Binary download

here

###Manuals

###Where to get the old T2?

###Contact

Wishnu Prasetya, author.

###If you want to cite

For now, cite me on on the old T2 paper below. I'll make the new T3 paper available soon.

###Note: wiki location

$ git clone https://uprime815@bitbucket.org/uprime815/t3.git/wiki

Updated