Dawoud/fMBT
Folders and files
| Name | Name | Last commit date | ||
|---|---|---|---|---|
Repository files navigation
The fMBT (free Model-Based Testing) tool automatically generates and
executes tests. It is suitable for testing anything from individual
C++ classes to GUI applications and distributed systems containing a
range of different devices. fMBT provides a model editor, test
generator, adapters for various purposes and tools for analysing logs.
Building & installing
---------------------
Quick start for Debian/Ubuntu users:
sudo apt-get install build-essential libglib2.0-dev libboost-regex-dev libedit-dev libmagick++-dev python-pexpect python-dbus python-gobject gawk libtool autoconf automake debhelper libboost-dev flex libxml2-dev graphviz imagemagick gnuplot python-pyside
Quick start for Fedora users:
yum install glibc-devel glib2-devel boost-devel libedit-devel gcc-c++ pexpect dbus-python libtool autoconf automake flex libxml2-devel graphviz ImageMagick ImageMagick-c++-devel gnuplot python-pyside
./autogen.sh
./configure
make
make install
From fMBT sources you can build a normal version as above, and a
low-dependency "Android" version (./configure --enable-android): it
needs only C and C++ runtimes.
Documentation
-------------
doc/tutorial.txt
hands on with fMBT using a tiny example
doc/overview.txt
technical introduction on how fMBT works in a
real-life example
doc/models.txt
how to create test models
doc/adapters.txt
how to use generic adapters and implement new ones
Examples
--------
examples/c++-unittest
testing single C++ class
examples/javascript-unittest
testing a JavaScript API in a browser
examples/shell-configurationtest
testing build configurations using shell functions
Building and using an Android version
-------------------------------------
1. Download and install Android NDK.
2. Run "./configure --enable-android --with-ndk-build=/your/ndk-build"
3. Run "make". This will build src/fmbt_droid targeted to your host.
4. Run "make src/android/fmbt_droid". This will build
src/android/fmbt_droid targeted to Android.
Note: At the moment fmbt_droid contains a subset features of
fmbt. Most notably, it does not preprocess input files, handle regular
expressions in configuration files or fork and execute child
processes.
Testing
-------
make check
Run tests against the source tree as it is.
test/git-HEAD/run.sh
Run tests against the latest commit in the current git branch.