Loading...
Searching...
No Matches
Welcome to Robot Testing Framework

Robot Testing Framework is a generic and multi-platform testing framework for the test driven development (TDD) which is initially designed for the robotic systems. However, it can be used for any TDD system.
The framework provides functionalities for developing and running unit tests in a language and middleware independent manner. The test cases are developed as independent plug-ins (i.e., using scripting languages or built as dynamically loadable libraries) to be loaded and executed by an automated test runner. Moreover, a fixture manager prepares the setup (e.g., running robot interfaces, simulator) and actively monitors that all the requirements for running the tests are satisfied during the execution of the tests. These functionalities along with other facilities such as the test result collector, result formatter and remote interface allow for rapid development of test units to cover different levels of system testing.

# Tutorials

- Using plug-in to develop test cases
- Using Lua to develop test cases
- Using Python to develop test cases
- Using Ruby to develop test cases
- Running test case plug-ins using robottestingframework-testrunner

# Installation

Robot Testing Framework library does not depend on any external library. The Robot Testing Framework has a `robottestingframework-testrunner` utility (see Running test case plug-ins using robottestingframework-testrunner) to easily run the test cases which are built as plug-ins. Test cases can be organized in test suites using a simple XML files. The `robottestingframework-testrunner` uses TinyXml library for parsing the suite XML files. Robot Testing Framework build system check for the installation of TinyXml and, in case, it cannot find any installed version of TinyXml library, it uses the internal version which is delivered with the Robot Testing Framework. The source code of the Robot Testing Framework is vailable at https://github.com/robotology/robot-testing-framework.

## Compile and Build

The installation is easy, straightforward and uses `CMake` building system.

        $ git clone https://github.com/robotology/robot-testing-framework.git
        $ cd robot-testing-framework
        $ mkdir build; cd build
        $ cmake ../; make

and optionally:

        $ make install

## Configuration

The only thing you need to configure is the RobotTestingFramework_DIR environment variable so that CMake can find Robot Testing Framework libraries and header files.

For example on Linux/Mac:

        $ echo 'export RobotTestingFramework_DIR=<path to the Robot Testing Framework build director>' >> ~/.bashrc

Alternatively you can add the Robot Testing Framework `'bin'` directory to your system PATH variable.

        $ echo 'export PATH=$PATH:<path to the Robot Testing Framework bin director>' >> ~/.bashrc

# Running Examples

There are some examples which are created by building Robot Testing Framework (The `BUILD_EXAMPLES=ON` should be enabled in the CMake). After building the Robot Testing Framework, you can run these examples from `build/bin` directory.

        $ cd build/bin
        $ ./simple
        $ ./simple_suite
        $ ./simple_collector
        $ ...

Author
  Ali Paikan