KTH Logo

KTH Royal Institute of Technology
School of Computer Science and Communication

mirrors | overview | download | tool demo | authors | publications ]


A model-based tester

This website moved to KTH. Please update your links and bookmarks!


Modbat is a model-based testing tool that is based on annotated (extended) finite-state machines.

Modbat is specialized to testing the application programming interface (API) of software. The model used by Modbat is compatible with Java bytecode. The user defines and compiles a model, which is then explored by Modbat and executed against the system under test. Failed test runs are reported as an error trace.

Modbat is based on Scala and compatible with any Java-based software. The model has the structure of a non-deterministic finite-state machine. From all possible transitions, one is chosen to be tested; annotations of the transition specify which code to execute.

Modbat is currently under active development. Modbat version 3.2 from this web page is open source. A more advanced version is available for licensing by request.

Modbat requires Scala 2.11. It also requires a subset of the ASM bytecode library to display line numbers of an error trace. A subset of that library, together with the license information, is bundled with Modbat.

See README for more information on how to use Modbat.


openmodbat-3.3.jar Pre-compiled version of Modbat
Repository on github. Recent releases are tagged by version number. Source code: Use the repository.
LICENSE License: Apache License 2.0
CHANGELOG Changes from older versions of Modbat
modbat-3.3-examples.jar Examples for version 3.3 (including source code)
asm-LICENSE ASM license: New BSD license (part of ASM is bundled with Modbat)

Tool demo


Cyrille Artho, Armin Biere.

Publications on Modbat

[7] K. Banzai: Optimization of Test Oracles in Model-based Testing for Distributed Systems. Master's thesis, the University of Tokyo, Japan 2018. PDF
[6] J. Yoneyama: Model-based Testing Simulating Unstable Networks and Devices for IoT Software. Master's thesis, the University of Tokyo, Japan 2018. PDF
[5] C. Artho, G. Rousset: Model-based testing of the Java network API. FESCA@ETAPS 2017, April 2017, Uppsala, Sweden. PDF
[4] C. Artho, Q. Gros, G. Rousset, K. Banzai, L. Ma, T. Kitamura, M. Hagiya, Y. Tanabe, M. Yamamoto: Model-Based API Testing of Apache ZooKeeper. IEEE Int. Conf. on Software Testing, Verification, and Validation (ICST 2017), March 2017, Tokyo, Japan. PDF
[3] C. Artho, M. Seidl, Q. Gros, E. Choi, T. Kitamura, A. Mori, R. Ramler, Y. Yamagata. Model-based Testing of Stateful APIs with Modbat. Int. Conf. on Automated Software Engineering (ASE 2015), November 2015, Lincoln, USA. PDF
[2] C. Artho, A. Biere, M. Hagiya, M. Seidl, E. Platon, Y. Tanabe, M. Yamamoto. Modbat: A Model-based API Tester for Event-driven Systems. 9th Haifa Verification Conference (HVC 2013), November 2013, Haifa, Israel. PDF
[1] C. Artho, A. Biere, M. Hagiya, R. Potter, R. Ramler, Y. Tanabe, F. Weitl, M. Yamamoto. Modbat: A model-based API tester for event-driven systems. Short paper (tool demo) at the Dependable Systems Workshop 2012, Kobe, Japan, December 2012. PDF

E-mail: artho (at) kth (dot) se

Last update: September 8, 2016: This website moved to KTH. Please update your links and bookmarks!

Obsolete versions (use not recommended): 1.0, 1.0.1, 1.0.2, 3.0, 3.2; modbat-1.0-examples.jar. Note that these versions have a more restrictive license (see LICENSE in the jar file: jar xf modbat-1.0-x.jar LICENSE). Version 2.0 was made available to selected partners but never released to the public; version 3.1 was used only internally.

KTH Logo