Model-Based Test Code Generation
Free!
MISTA v1.0 Beta with manuals and examples. Bug
reports and requests for feature enhancement are welcome!
MISTA is a tool for generating executable tests from a model-implementation description (MID), which consists of a test model, model-implementation mapping (MIM), and helper code.
It uses lightweight high-level Petri nets as an expressive, visual modeling notation. Both control-oriented and data-oriented test models can be specified. It also supports modeling with UML protocol state machines and contracts (preconditions and postconditions).
It provides test generators for comprehensive coverage criteria of test models, including reachability coverage, reachability with sneak paths, state coverage, transition coverage, depth coverage, goal coverage, random walk, deadlock/termination state coverage, and given sequences. Pairwise and partial order techniques are options for reducing the size of test suites.
It supports a number of languages (Java, C, C++, C#, HTML, and VB) and test frameworks (e.g., JUnit, NUnit, Selenium IDE, and Robot Framework) for offline test execution.
It supports on-the-fly testing and online execution of generated tests through Selenium WebDriver or a RPC protocol (JSON-RPC or XML-RPC).
MISTA can be used for
function testing, acceptance testing, GUI testing, security testing, and
programmer testing.
On-the-fly testing with Selenium WebDriver
Test code generation for Robot Framework
Overview
1. Dianxiang Xu, A Tool for Automated Test Code
Generation from High-Level Petri Nets, Proc. of the 32nd International
Conference on Application and Theory of Petri Nets and Concurrency (Petri Nets
2011), Newcastle upon Tyne, UK, June 20-24, 2011.
Security Test Generation
2. Dianxiang Xu,
Manghui Tu, Michael Sanford, Lijo Thomas, Daniel Woodraska, and Weifeng Xu,
Automated Security Test Generation with Formal Threat Models, IEEE Transactions on
Dependable and Secure Computing. To appear.
MACT: Model-based Aspect/Class Checking and Testing
A tool
for generation of Java/AspectJ test code from finite state models of classes
and aspects.
1.
Dianxiang
Xu, Omar El-Ariss, Weifeng Xu, Linzhang Wang. Testing Aspect-Oriented Programs
with Finite State Machines, Journal of Software Testing, Verification and
Reliability, to appear.
2. Dianxiang Xu and Junhua Ding, Prioritizing State-Based Aspect Tests, Proc.
of the Third International Conference on Software Testing, Verification, and
Validation (ICST'10),
Paris, France, April 2010.
3. Dianxiang Xu,
Omar El Ariss, Weifeng Xu, Linzhang Wang, Aspect-Oriented Modeling and
Verification with Finite State Machines, Journal of Computer Science and
Technology, 24(5): 949-961, Sept. 2009. (Expanded version of the
COMPSAC'07 paper)
4. Dianxiang Xu, Weifeng Xu, and
W. Eric Wong, Automated Test Code Generation from Class State Models, International
Journal of Software Engineering and Knowledge Engineering, 19(4): 599-623,
June 2009. (Expanded version of the SEKE'07 paper)
5. Dianxiang Xu, Izzat Alsmadi,
and Weifeng Xu, Model Checking Aspect-Oriented Design Specification, Proc.
of the 31st IEEE International Computer Software and Applications Conference
(COMPSAC'07), Beijing, July 2007.
6. Dianxiang Xu, Weifeng Xu, and
W. Eric Wong. Automated Test Code Generation from UML Protocol State Machines, Proc.
of the 19th International Conference on Software Engineering and Knowledge
Engineering (SEKE'07), Boston, July 2007.
7. Weifeng Xu and Dianxiang Xu.
State-Based Testing of Integration Aspects. Proc. of the Second Workshop on
Testing of Aspect-Oriented Programs (WTAOP’06). In conjunction with
ISSTA’06, July 2006, USA.
8. Dianxiang Xu and Weifeng Xu.
State-Based Incremental Testing of Aspect-Oriented Programs. Proc. of the
5th International Conference on Aspect-Oriented Software Development (AOSD’
2006), March 20-24, 2006. Bonn, Germany.
9. Dianxiang Xu, Weifeng Xu, and
Kendall Nygard. A State-Based Approach to Testing Aspect-Oriented Programs. Proc.
of the 17th International Conference on Software Engineering and Knowledge
Engineering (SEKE’05), Taiwan, July 2005.
Last
update: January 2012