A Unit Testing Tool for embedded software
Embunit is a unit testing tool for programmers and testers developing software in C or C++. It is aimed at embedded software development, but can be used to create unit tests for any software written in C or C++.
Embunit eliminates the mundane, repetitive aspects of writing unit tests, leaving you free to concentrate on defining the test behaviour. This is achieved by specifying a sequence of actions as shown in the example screenshot below. Embunit generates the unit test source code automatically.
Embunit has been developed with flexibility in mind, and can be customised to create unit tests for virtually any hardware platform; even the smallest microcontrollers. It is not tied to any specific toolset and is designed to accommodate the common limitations of embedded C++ compilers.
Summary of the main features
- Create whitebox, blackbox, integration, and regression tests
- Automatic unit test source code generation in C or C++
- Fully compatible with embedded C++ compilers
- Customise test result reporting to suit hardware environment
- Simple test case organisation
What sets Embunit apart from other unit testing tools?
Embunit is different from most unit testing tools and frameworks because the unit tests are implemented using a very simple set of language constructs. For example, no standard library functions are used, and C++ exceptions can be disabled if required. This makes it ideal for small embedded systems that typically have tight constraints on code and memory space.
The other thing that sets Embunit apart from unit testing frameworks is that you don't need to write any code. Tests are specified as a list of actions, and the source code is generated automatically. You only have to write code if you need to stub something out, in which case Embunit has a handy "Context" mechanism so your stub code always knows what's going on.
A note about Embedded Unit:
Some people have asked if Embunit is related to the Sourceforge project Embedded Unit (which is commonly referred to as EmbUnit). The short answer is "No". Embunit has been developed from the ground up to allow developers to create unit tests without writing code, to facilitate the ongoing maintenance of those unit tests, and with multiple language support.
The philosophy behind Embunit
In developing Embunit, we have tried to keep things a simple as possible. Our aim is to help you create unit tests quickly and easily; to let you do what you do best while taking care of the tedious and repetitive.
Download Embunit today and evaluate it for 30 days using the built in evaluation key. The first time you run Embunit just click the button that says "I want to evaluate the software" in the license management dialog box.
Need longer to evaluate?
No problem, contact us and we will send you a new evaluation key.
Attention all students!
See the FAQ page to find out how to get Embunit for free.