This work describes a framework for automated acceptance testing of robotic systems within Microsoft Robotics Developer Studio environment. The framework provides means for development and organization of a test suite and a tool for its automated execution. Each test proves correctness of some high-level system’s functionality by performing a sequence of actions in a physics environment and checking the result against a success criterion, which, generally, assesses the state of the software and the world. These actions take place inside of the MRDS simulation engine being in charge of physics and graphics simulation. Each test consists of three constituent parts describing physics environment, software configuration and the test’s scenario. The first two are xml, the last has to be written in C#. The framework also handles the case of tests with nondeterministic outcomes by rerunning each of them multiple times and assessing resultant success rate. The framework proved considerably beneficial through development of a mobile robot control system containing services like localization, path planning etc.
Disclaimer: MS has abandoned development and support of MRDS framework.
The project’s code resides on GitHub. Feel free to contact me if you are interested.
Table of contents
- Introduction
- Part I. Contemplating
- Part II. Designing
- Part III. Implementing
- Tests organization – for we are many
- Test runner service – a bundle of joy
- Time handling – real time faking
- Part IV. Analyzing
- Conclusion
Start reading |