C++
11
Added in Boost
1.21.0
Categories:
Correctness
Support for simple program testing, full unit testing, and for program execution monitoring.
This Release
Gennadiy Rozental
Gennadiy Rozental
Author
Raffi Enficiaud
Raffi Enficiaud
Author
Matt Borland
Matt Borland
Maintainer
Alexander Grund
Alexander Grund
Contributor
Dependencies
Algorithm
Assert
Bind
Config
Core
Detail
Exception
Function
IO
Iterator
MPL
Numeric Conversion
Optional
Preprocessor
Smart Ptr
Static Assert
Type Traits
Utility
boosttest logo
What is Boost.Test?
Boost.Test is a C++11/14/17 unit testing library, available on a wide range of platforms and compilers.
The library is part of Boost. The latest release of the library is available from the boost web site.
Full instructions for use of this library can be accessed from http://www.boost.org/doc/libs/release/libs/test/
Key features
- Easy to get started with:
- download and deflate the latest boost archive
- create a test module with this (header version):
#define BOOST_TEST_MODULE your_test_module #include <boost/test/included/unit_test.hpp>
- Write your first test case:
BOOST_AUTO_TEST_CASE( your_test_case ) { std::vector<int> a{1, 2}; std::vector<int> b{1, 2}; BOOST_TEST( a == b ); }
- build and run
- done
- powerful and unique test assertion macro
BOOST_TEST
, that understands floating points, collections, strings... and uses appropriate comparison paradigm - self-registering test cases, organize cases in test suites, apply fixtures on test cases, suites or globally
- provide assertion context for advanced diagnostic on failure
- powerful and extensible dataset tests
- add decoration to test cases and suites for advanced description, group/label, and dependencies
- powerful command line options and test case filters
- extensible logging, XML and JUNIT outputs for third-party tools (eg. cont. integration)
- various usage (shared/static library/header only) for faster integration and/or compilation/build cycles, smaller binaries
Copyright and license
Copyright 2001-2014, Gennadiy Rozental.
Copyright 2013-2020, Boost.Test team.
Distributed under the Boost Software License, Version 1.0.
(Get a copy at www.boost.org/LICENSE_1_0.txt)
Contribute
Please read this document to get started.
Build Status
Boost.Test uses mostly the facility provided by our wonderful Boost testers (column Tests
below).
Branch | Deps | Docs | Tests | Github Actions |
---|---|---|---|---|
master |
Deps | Documentation | Enter the Matrix | Build Status |
develop |
Deps | Documentation | Enter the Matrix | Build Status |
All Time
Andrzej Krzemieński
Andrzej Krzemieński
Contributor
Beman Dawes
Beman Dawes
Contributor
John Maddock
John Maddock
Contributor
Steven Watanabe
Steven Watanabe
Contributor
Jürgen Hunold
Jürgen Hunold
Contributor
Douglas Gregor
Douglas Gregor
Contributor
Vladimir Prus
Vladimir Prus
Contributor
Rene Rivera
Rene Rivera
Contributor
Peter Dimov
Peter Dimov
Contributor
Marshall Clow
Marshall Clow
Contributor
Dave Abrahams
Dave Abrahams
Contributor
Adam Wulkiewicz
Adam Wulkiewicz
Contributor
Andrey Semashev
Andrey Semashev
Contributor
K. Noel Belcourt
K. Noel Belcourt
Contributor
Antony Polukhin
Antony Polukhin
Contributor
Daniel James
Daniel James
Contributor
Edward Diener
Edward Diener
Contributor
David Deakins
David Deakins
Contributor
Roland Schwarz
Roland Schwarz
Contributor
Ed Catmur
Ed Catmur
Contributor
Troy D. Straszheim
Troy D. Straszheim
Contributor
Eric Niebler
Eric Niebler
Contributor
Marek Kurdej
Marek Kurdej
Contributor
Marcel Raad
Marcel Raad
Contributor
akumta
akumta
Contributor
Bryce Adelstein-Lelbach
Bryce Adelstein-Lelbach
Contributor
James E. King III
James E. King III
Contributor
Jens Maurer
Jens Maurer
Contributor
Vicente J. Botet Escriba
Vicente J. Botet Escriba
Contributor
Paul A. Bristow
Paul A. Bristow
Contributor
Jeremiah Willcock
Jeremiah Willcock
Contributor
Ben Wiederhake
Ben Wiederhake
Contributor
Jonathan Turkanis
Jonathan Turkanis
Contributor
Toon Knapen
Toon Knapen
Contributor
Mateusz Łoskot
Mateusz Łoskot
Contributor
Norbert Wenzel
Norbert Wenzel
Contributor
Joaquin M. López Muñoz
Joaquin M. López Muñoz
Contributor
Benjamin Roland Buch
Benjamin Roland Buch
Contributor
Aaron Gorenstein
Aaron Gorenstein
Contributor
Stephen Kelly
Stephen Kelly
Contributor
Noel Belcourt
Noel Belcourt
Contributor
Jonathan Wakely
Jonathan Wakely
Contributor
Romain Geissler
Romain Geissler
Contributor
Tien Do
Tien Do
Contributor
Peter Jansson
Peter Jansson
Contributor
Luke Peterson
Luke Peterson
Contributor
Kedar R. Bhat
Kedar R. Bhat
Contributor
Mikhail Pilin
Mikhail Pilin
Contributor
mmitti
mmitti
Contributor
Partha P. Mukherjee
Partha P. Mukherjee
Contributor
Tim Blechmann
Tim Blechmann
Contributor
Jere Pehkonen
Jere Pehkonen
Contributor
Gabriel Hege
Gabriel Hege
Contributor
Bevan Collins
Bevan Collins
Contributor
Jan Bouwer
Jan Bouwer
Contributor
Pino Toscano
Pino Toscano
Contributor
Jurko Gospodnetić
Jurko Gospodnetić
Contributor
Daniela Engert
Daniela Engert
Contributor
Hartmut Kaiser
Hartmut Kaiser
Contributor
Jeremy Siek
Jeremy Siek
Contributor
Thomas Witt
Thomas Witt
Contributor
Michael A. Jackson
Michael A. Jackson
Contributor
Jessica Hamilton
Jessica Hamilton
Contributor
Giovanni Mascellani
Giovanni Mascellani
Contributor
zerotypos-found
zerotypos-found
Contributor
Brian Kuhl
Brian Kuhl
Contributor
George Koehler
George Koehler
Contributor
Mikhail Strelnikov
Mikhail Strelnikov
Contributor
equal-l2
equal-l2
Contributor
Tom Hughes
Tom Hughes
Contributor
Reimar Döffinger
Reimar Döffinger
Contributor
Laurent Stacul
Laurent Stacul
Contributor
Peter Klotz
Peter Klotz
Contributor
ja11sop
ja11sop
Contributor
Daniel Laügt
Daniel Laügt
Contributor
Jörg Böhme
Jörg Böhme
Contributor
wwinder
wwinder
Contributor
Jörg Krause
Jörg Krause
Contributor
André Draszik
André Draszik
Contributor
Adam Majer
Adam Majer
Contributor
Namezero
Namezero
Contributor