Skip to main content

Arduino TestSuite for automated Arduino Unit Testing

Project description

This Python scripts 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.

The following steps are performed for each set of unit tests:
  1. The script compiles and uploads an Arduino sketch that contains the unit testing.
  2. The unit tests are run on the Arduino board.
  3. The results of the test are printed over the serial port and analyzed by the Python script.
  4. The script starts the next test, repeating steps 1,2 and 3 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.





  • Currently only tested on Linux
  • Default paths are configured for Linux
  • Subprocess handling only works on Linux
  • The program was created with other OS users in mind, so it will eventually get full cross-platform support. Help from Windows-developers is much appreciated.


If not stated otherwise ArduinoTestSuite is distributed in terms of the GPLv2 software license. See COPYING in the distribution for details.

Bug reports:


0.2.2: Error handling:
  • Compile & upload errors
  • Timing: timeout for uploading & running of the tests
  • Missing files: wrong test folder, no config file
  • Hardware: Disconnect Arduino during test
0.2.1: Settings & configuration
  • Passing cli arguments & cli help messages
  • Settings separated from other code
  • Start tests from config file
0.2: First working OOP version
  • Subprocess for arscons
  • Classes: Test, TestSuite, InfoPrinter
  • Divided the code in several modules
0.1: Initial release:
  • Call scons
  • Run unit test
  • Print summary

Project details

Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Files for arduino_testsuite, version 0.2.2
Filename, size File type Python version Upload date Hashes
Filename, size arduino_testsuite-0.2.2.tar.gz (18.2 kB) File type Source Python version None Upload date Hashes View

Supported by

AWS AWS Cloud computing Datadog Datadog Monitoring Facebook / Instagram Facebook / Instagram PSF Sponsor Fastly Fastly CDN Google Google Object Storage and Download Analytics Huawei Huawei PSF Sponsor Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Salesforce Salesforce PSF Sponsor Sentry Sentry Error logging StatusPage StatusPage Status page