Synesis Software STLSoft - ... Robust, Lightweight, Cross-platform, Template Software ...

What is xTests?

Version 0.10.3

Introduction | Languages | License | Portability and Dependencies | Authors
Installing xTests | Building xTests | Linking to xTests | Contact & Feedback
Examples | Tutorials | Users of xTests


xTests is a testing library for C and C++. More specifically, it is a small, lightweight, portable, simple unit- and component-test framework suitable for exercising C and C++ libraries. Its primary design features are:


xTests is written in C and C++, and presents a simple C API, and a more sophisticated C++ API.


xTests is released under the BSD license, which basically means its free for any use, but you can't claim it's yours.

Portability and Dependencies

xTests works on with many compilers, is platform independent, and requires only one other library.

Operating Systems

xTests itself is a platform-independent library. It has been tested and used on both UNIX and Windows - in principle, it should work on any operating system for which a (reasonably modern) C++ compiler exists.


xTests is written in standard C/C++, and should be compilable with any modern C/C++ compiler that provides an implementation of the C & C++ standard libraries.

xTests has been built and tested with the following compilers:

If you wish to use xTests with a compiler not listed here, you may find the STLSoft header file will issue a #error informing you that your chosen compiler is not supported. This can be overriden by defining the pre-processor symbol _STLSOFT_FORCE_ANY_COMPILER. If you do that, your compiler will be expected to be pretty standards compliant (though nothing that's particularly out-of-this-world, such as export). If you run into any issues with using xTests/STLSoft with such a compiler, we'd be happy to hear from you on the STLSoft newsgroup.


xTests is dependent on the STLSoft libraries, version 1.9.23, or later.

STLSoft provides the following important features:

Because STLSoft is 100% header-only, there is no need to build anything in order to use STLSoft with xTests. Simply define the STLSOFT environment variable, as described in the STLSoft distribution.


xTests is written by Matthew Wilson, author of the books Imperfect C++ and Extended STL, volume 1, and the STLSoft, Pantheios, and FastFormat libraries.

xTests Library documentation Matthew Wilson and Synesis Software Pty Ltd, 1999-2009 Logo