Skip to content
SPECIFICTION
Get listed

Boost.Test vs FsCheck

Boost.Test

boost.org

FsCheck

fscheck.github.io

Side by side

FigureBoost.TestFsCheck
Price fromFreeFree
Free planYesYes
Free trial——
Open source——
WindowsYesYes
macOS—Yes
LinuxYesYes
Plans published11
Spec score · Unit Testing Frameworks8.3 (#3)8.4 (#2)
AudienceThe library is intended for C++ developers who need simple program testing, unit testing, or program execution monitoring.FsCheck is for developers who want to test properties of .NET programs with generated inputs.
LicenseBoost.Test is distributed under the Boost Software License, Version 1.0.The project says its BSD license permits modification and redistribution for commercial and non-commercial purposes.
PurposeBoost.Test supports simple program testing, full unit testing, and program execution monitoring.FsCheck automatically tests .NET programs by checking properties against randomly generated cases.
SupportThe FAQ directs users to the Boost Users mailing list and the project's GitHub issues for bug reports and feature requests.The project invites users to report issues on GitHub and says contributors may open issues about documentation problems or gaps.

Plans

Boost.Test

  • Boost.TestFree

Boost.Test pricing →

FsCheck

  • FsCheckFree

FsCheck pricing →

In their own words

Boost.Test

Boost.Test is a free C++11, C++14, and C++17 library for simple program testing, unit testing, and program execution monitoring. Its BOOST_TEST macro handles comparisons involving floating-point values, collections, and strings. Test cases can self-register and be arranged into suites with fixtures, decorators, labels, dependencies, descriptions, and groups. Documentation also covers data-driven and template cases. Assertion context and configurable logging provide failure diagnostics, while XML and JUNIT logs support third-party and continuous-integration tools. Boost.Test can be used as a header-only, static, or shared library and is distributed under the Boost Software License, Version 1.0. The Boost 1.92.0 release page lists Unix source archives plus Windows source and binary downloads. The library page links documentation, Boost Slack discussion, and GitHub issues, and lists dependencies including Algorithm, Assert, Bind, Config, Core, Exception, and Type Traits. Listed platforms are Linux and Windows. There is no free trial because the software is free.

Visit boost.org

FsCheck

FsCheck checks properties of.NET programs against randomly generated cases. Developers can express properties in F#, C# or VB, then run them with the built-in runner from an interactive session, a command-line program or a test framework. Integrations are documented for xUnit.net and NUnit, with user-created integrations for Expecto, Fuchu, AutoFixture and MSTest. When a property fails, FsCheck shrinks the input and shows a minimal counterexample. Developers can also define custom generators and shrinkers and group them in Arbitrary instances. The library supports parameterized cases and parallel execution, and its packages and NUnit and xUnit.NET plugins are available from NuGet. FsCheck is free: its listed plan is free, with a BSD license permitting commercial and non-commercial modification and redistribution. It runs on Linux, macOS and Windows. The project maintains version 3.x, but its documentation covers 2.x and is described as out of date and incomplete. Its model-based testing API is experimental and exempt from semantic-versioning guarantees.

Visit fscheck.github.io