Skip to content

OMKR/fMBT

 
 

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 tesseract-ocr

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 tesseract

./autogen.sh # run only if you cloned sources from git
./configure
make
sudo make install

(There is a known issue with Fedora: "make install" may install Python
libraries to a directory that is not in the default PYTHONPATH. You
may need to add it to PYTHONPATH, for instance:
export PYTHONPATH=$PYTHONPATH:/usr/local/lib/python2.7/site-packages)


Getting started
---------------

1. Create a model and a test configuration:

   fmbt-editor helloworld.aal helloworld.conf

2. Run the first test:

   fmbt -l first.log helloworld.conf

3. See what it executed:

   fmbt-log first.log


Documentation
-------------

doc/aal_python.txt
        AAL/Python language reference documentation.

doc/configuration.txt
        Test configuration reference documentation.


Examples
--------

examples/filesystemtest
        Test a filesystem: mkdir, rmdir, access.

examples/c++-unittest
        Test a C++ class.

examples/javascript-unittest
        Test a JavaScript API in a browser.

examples/python-unittest
        Test a Python class.

https://github.com/askervin/fmbt-mplayertest
        Test MPlayer's pause, continue, next song, prev song, add
        song, and reset playlist.

https://github.com/askervin/fmbt-androidtest
        Test the phone application on Android: make calls, put calls
        on hold, swap calls, hang up calls from the phone application
        and homescreen menu.


fMBT self-tests
---------------

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.

About

Free Model Based tool

Resources

License

Stars

Watchers

Forks

Packages

No packages published

Languages

  • C++ 35.0%
  • C 33.4%
  • Python 24.8%
  • Shell 6.6%
  • Emacs Lisp 0.2%
  • Java 0.0%