Sput Unit Testing Framework for C/C++

Sput is an unit testing framework for C/C++ that focuses on simplicity of use and maximum portability.

It is implemented as a single ANSI C compliant header file that provides all macros needed to start unit testing in nearly no time: 10 minutes and you are good to go!


Sput works on a large set of operating systems, including Microsoft Windows, Linux and FreeBSD.
Simple API
The unit testing API is simple and easy to understand.
10 Minutes to Learn
After reading the tutorial you should be ready to write your unit tests right away.
Open Source
Sput is both Open Source and Free Software.
Dependency Free
Sput does not depend on any other third party software beside the system's standard C runtime.
Sput comes as a single ANSI C compliant header file.
Unit tests based on Sput can be integrated into various build systems like CMake and/or GNU Make easily.

Why Choose Sput?

Sput's simplicity and portability allow you to rapidly learn how to use its testing macros, to write intuitive test cases and to compile and run your tests on all operating systems that an ANSI C compiler is provided for.

As Sput consists of a single header file only, you just have to add it to your project and are done. No library needs to be compiled, no external dependencies have to be satisfied.

Sput gives you a reasonably trimmed set of macros that allow you to focus on your test cases without getting in your way!

Supported Platforms

Sput is written in plain ANSI C and does not use any operating system specific code. Therefore, it should build and be usable on any operating system that a C compiler is available for.

The following operating systems and architectures have been tested and are known to work:

Supported Compilers

The following compilers have been tested and are known to work:

Any other ANSI C compiler should work as well.


Sput comes with a short tutorial that provides all the knowledge required to use the unit testing framework in nearly no time.

License (Open Source)

Sput is both Open Source and Free Software provided under the terms of the liberal, OSI approved 2-clause BSD License.

That means, you can use Sput to test your software projects free of charge, both open source and commercial ones.

For details, have a look at the "LICENSE" file included in the distribution.


The latest release of Sput is: sput-1.4.0.tar.gz.

Who Is Already Using Sput?

Sput is already in use in both commercial and Open Source projects.

Open Source projects using Sput include:

David Breunig developed a variant of Sput which produces JUnit-like XML output. Its repository is available on GitHub.

Anton Moiseev developed a port of Sput to Arduino which is available on GitHub.

Are you using Sput in one of your projects and like to see your project listed here?
Drop me a line!