- Reductio
Infobox_Software
name = ℝ∊dμcti∅
caption =
developer = Tony Morris
latest_release_version = 2.2
latest_release_date =
operating_system =JVM
genre = Software testing
license = BSD-style
website = [http://reductiotest.org/] |Reductio is
open source software written using the Java Programming Language from an idea that originated in a research paper called "QuickCheck: A Lightweight Tool for Random Testing of Haskell Programs" [QuickCheck: A Lightweight Tool for Random Testing of Haskell Programs [http://www.cs.chalmers.se/~koen/pubs/icfp00-quickcheck.ps] ] . Reductio andQuickCheck utilise a testing technique calledAutomated Specification-based Testing .The primary objective of Reductio is to make testing as rigorous as possible, while alleviating developer effort through automation of many common testing tasks. Reductio includes usage examples that demonstrate how this objective has been met using both traditional Java 1.5 and Java 7 BGGA syntax as well as Scala programming language examples [
* [http://reductiotest.org/examples/1.5 Java 1.5 examples]
* [http://reductiotest.org/examples/1.5 Java BGGA examples]
* [http://reductiotest.org/examples/scala Scala examples] ] .Example
The following example uses Java 7 BGGA syntax to execute 100 unit tests on
java.util.LinkedList
. It asserts that when a list (x
) is appended to another list (y
), then thesize()
of the resulting list (xy
) is equivalent to the sum of thesize()
of the two original lists.Property p = property(arbLinkedList(arbInteger), arbLinkedList(arbInteger), { LinkedListx, LinkedList y => prop(append(x, y).size() = x.size() + y.size()) }); Citations and footnotes
External links
* [http://reductiotest.org/ Reductio website]
* [http://reductiotest.org/manual Reductio User Manual]
* [http://wiki.workingmouse.com/index.php/Reductio_EqualsHashCode Reductio RequalsHashCode]
* [http://wiki.workingmouse.com/index.php/A_Case_for_Automated_Testing A Case for Automated Testing]
* [http://wiki.workingmouse.com/index.php/Tests_As_Documentation Tests As Documentation]
Wikimedia Foundation. 2010.