---
Topics index
Changes log
Twiki main
Twiki docs
User guide
Formatting rules
(o)
Center
Home
Courses
People
Projects
Page
Edit Page
Rename Page
Attach File
Printable
Wiki Source
More ...
Web
Recent Changes
Notify Service
News
Page Index
Search
More ...
Wiki
About TWiki
Text Formatting
Registration
Change Password
Reset Password
Users
Groups
Log In
or
Register
T2 Framework
WP
---++ T2 *Automated unit testing tool for Java* <!-- <img src="%ATTACHURLPATH%/croco.jpeg" alt="croco.jpeg" width="250" height="100" align="right"/> --> <!-- <div class="newsbar"> *News:* %INCLUDE{TTNews}% _[[TTNews][more news...]]_ </div> --> <br> <br> T2 is a fully automatic, trace-based random testing tool, featuring _in-code specifications_ and _reflexive testing_. It is also almost _interactive_; depending on the complexity of your class it can respond in less than a second, in which time it can inject thousands of tests! T2 checks for internal errors, run time exceptions, method specifications, and class invariant. Unlike other testing tools, *T2 reads specifications written in plain java!* They are placed in the class we want to specify. Though not as fancy as Z or JML, in-code specifications are declarative, formal, and powerful. Maintenance effort is also minimum. Unlike other testing tools T2 does not check individual methods in isolation. Nor does it generate Junit test scripts, though we could add this feature. T2 actually performs the test directly or on the fly. So it responds faster, perhaps even giving the feel that it is interactive. Internally it generates tests in the form of traces (sequences) of method calls; each will be checked. This has the effect that methods are basically checking each other. This is called _reflexive testing_. The benefit is that *it still works well even if the specifications provided are very partial*, whereas other testing tools typically rely complete specifications. It is a unit testing tool; with classes as the units. Violating traces are reported, and can be saved, and reloaded for re-testing or regression. T2 does not and cannot check concurrency. * *Quick Example* : [[TTwoExample][here]]. More examples are provided the Manual. * *Screen Shots* : [[TTwoScreenShots][here]]. * *Download* : [[http://code.google.com/p/t2framework/][download it from Google-code]]. You need Java 1.5 or above. To use T2 you only need the jar file. Just include it in your classpath. Instruction on how to use T2 is in the User Manual. * *User Manual* : [ [[http://code.google.com/p/t2framework/][download it from Google-code]] ]. <!-- [[http://people.cs.uu.nl/wishnu/research/projects/T2/T2Manual/][HTML]] | [[%ATTACHURL%/T2Manual.pdf][pdf]] --> * *Presentation* : [ [[%ATTACHURL%/TT_STC_nov_07.ppt][ppt (powerpoint)]] ] * *Integration with IDE and JUnit* : [[TTIDE][see here]] * *License* : free to use under the GNU GPL license. ---+++++ Papers * Papers explaining T2: * _[[http://www.cs.uu.nl/research/techreps/UU-CS-2007-037.html][Trace-based Reflexive Testing of OO Programs]]_, I.S.W.B. Prasetya, T.E.J. Vos, A.I. Baars. Tech. Report CSUU, 2007. Also in the proceeding of IEEE International Conference on Software Testing Verification and Validation (ICST), 2008. See also [[http://doi.ieeecomputersociety.org/10.1109/ICST.2008.12][DOI]]. * Papers related to T2: * _[[%ATTACHURL%/CaseReversi.pdf][Reversi Applet: a Case for Automated Testing with T2]]_, I.S.W.B. Prasetya, T.E.J. Vos. Or, its original technical report version: _[[http://www.cs.uu.nl/research/techreps/repo/CS-2008/2008-037.pdf][Patterns for In-code Algebraic Testing]]_, I.S.W.B. Prasetya, T.E.J. Vos. Tech. Rep UU-CS-2008-037. The source code of the Reversi example: [[%ATTACHURL%/ReversiExample.zip][here]]. * _[[%ATTACHURL%/SCR-2008-014.pdf][Extending T2 with Prime Path Coverage Exploration]]_, M. Gerritsen. Master thesis, INF/SCR-2008-014. Dept. of Inf. and Comp. Sciences, Utrecht Univ. 2008. * _[[%ATTACHURL%/CoverageSpec_DTD_08.pdf][Coverage Specification (extended abstract)]]_, I.S.W.B. Prasetya, M. Gerritsen, 2008. * _[[%ATTACHURL%/SCR-2007-105.pdf][THEMIS: Framework for Automated Testing of Graphical User Interfaces]]_, M. Stobbe. Master thesis, INF/SCR-2007-105. Dept. of Inf. and Comp. Sciences, Utrecht Univ. 2008. * _[[%ATTACHURL%/Paper6halaman.pdf][Automated Testing for Java-Based Programs with Java PathFinder and T2 Framework]]_, A.Y Prasetyo, R. Suryadharma, A. Azurat, B.H. Widjaja, in the Asia Pacific Conf. on Art, Science, Engineering & Technology (ASPAC) 2008, Solo, Indonesia. ---+++++ Other things * Some result: see [[TTSomeResult][here]] * Related links: see [[TTwoRelatedLinks][here]] ---+++++ Contact Wishnu Prasetya, wishnu@cs.uu.nl Let us know what you think %COMMENT{type="top" target="T2Comment"}% | [[T2Comment][View all comments]] | ---++ Student Projects I'm looking for students to further develop T2. For Master Thesis Project, [[MasterProjects#TTMasterThesis][see here for further information.]] For Experimentation Project, [[Master.Intern.ExperimentationProject#TTInteractiveTestTraces][check out here]]. <!-- For Experimentation Project, [[ExperimentationProject][check out here]]. --> <!-- * front.png: <br /> <img src="%ATTACHURLPATH%/front.png" alt="front.png" width='549' height='731' /> -->
Topic attachments
I
Attachment
Action
Size
Date
Who
Comment
pdf
T2_SBST2013contest_entry.pdf
manage
177.3 K
26 Mar 2013 - 08:53
WishnuPrasetya