This program allows automated running of several Arduino unit tests. The testing process is started on the PC but the tests run on the actual Arduino hardware. One set of unit tests is typically used to test one Arduino library.

Program flow:The following steps are performed for each set of unit tests:

Read the config file to find out which tests to run

The script compiles and uploads an Arduino sketch that contains the unit testing code.

The unit tests are run on the Arduino board.

The results of the test are printed over the serial port and analyzed by the Python script.

The script starts the next test, repeating the above steps for all test that are requested in the configuration file.

The script prints a summary showing an overview of all the failed/passed tests in the complete testsuite.

Dependencies:

The unit tests are written with the "Arduino Unit Testing Library": http://code.google.com/p/arduinounit

The tests also use "Arduino Unit Testing Helper Library": http://code.google.com/p/arduino-unit-test-helper-library

The code is uploaded to the Arduino board with "Arscons: scons script for Arduino": http://github.com/suapapa/arscons

Why is this useful:

While reading the book "Test-Driven Development for Embedded C" by James W. Grenning, I was wondering if some of the proposed methods could be applied to the arduino platform