iutest is framework for writing C++ tests. Supports automatic tests discovery, include only, value- and type- parameterized tests, XML test report, inform- and assume- flavor, and japanese test name, matchers, etc...


Keywords
native, iutest, test, nativepackage, assertions, c-plus-plus, cpp, cpp03, cpp11, cpp14, cpp17, cpp98, header-only, no-dependencies, tdd, testing-framework, wandbox
License
BSD-3-Clause
Install
Install-Package iutest -Version 1.17.1

Documentation

AppVeyor Build status Azure Pipelines Build Status Bitrise iOS Build Status Buddy branch CircleCI Cirrus Build Status Codefresh build status Codeship Status for srz-zumix/iutest Drone Build Status GitHub Actions Status GitLab CI pipeline status Peakflow Build Status Scrutinizer Build Status Semaphore Build Status Semaphore 2.0 Build Status Shippable Run Status Travis-CI Build Status Wercker status

Codacy Badge Language grade: C/C++ Language grade: Python Codecov Coveralls Coverage Status Coverity Scan Build Status GuardRails badge GitHub Actions reviewdog Status
New(3-clause) BSD License NuGet version
support

iutest

iutest - iris unit test framework

Welcome to the iutest

iutest is framework for writing C++ tests.

Features

  • An XUnit test framework.
  • Header only, no external dependencies.
  • Test discovery.
  • XML/JUnit test report generation.
  • Assertions.
    • A rich set of assertions.
    • User-defined assertions.
    • Power-assert (expression-assert).
    • Matchers.
    • Fatal and non-fatal, warning, assume failures.
  • Value-parameterized tests.
  • Type-parameterized tests.
  • Advanced parameter generation.
    • Pairwise parameter.
    • CSV parameter.
    • Any parameter.
    • Random parameter.
    • Multiple parameters can be concatenated.
  • Test packages (grouping).
  • Skip test.
  • Private member test.
  • Janaese test name (C++03).
  • Various options for running the tests.
  • Compatible with Google Test. (1.5 or later)

Platforms

  • Windows
  • Linux
  • MacOS
  • FreeBSD
  • Cygwin
  • MinGW

Compiler

  • VC++6~
  • GCC 3.4.6~
  • Clang 3.1~
  • Zapcc

Documentation

Project page

Support

Tools

  • fused
    make fused-src.
  • Twilio
    notifies the test results using Twilio
  • Wandbox
    tools to make use of the iutest in Wandbox

Tests

CI master develop Tests
AppVeyor AppVeyor Build status AppVeyor Build status Windows, Visual Studio, Cygwin, MINGW, NuGet, Visual Studio PREFAST (Code Analysis)
Azure Pipelines Build Status Build Status Config matrix test
Bitrise Bitrise iOS Build Status Bitrise iOS Build Status iOS
Bitrise Android Build Status Bitrise Android Build Status Android
Buddy buddy branch buddy branch benchmark test
Circle CI CircleCI CircleCI Basic test with opmimize options
Cirrus CI Cirrus Build Status Cirrus Build Status g++/clang std=c++14,17.. Basic tests, FreeBSD Basic tests
Codacy Codacy Badge Codacy Badge Shellcheck, Cppcheck, PyLint, etc...
Codefresh Codefresh build status Codefresh build status Build tools/docker/Dockerfile, Benchmark test, Gcc 8/9 basic test
Codeship Codeship Status for srz-zumix/iutest Codeship Status for srz-zumix/iutest Check coding standard of the project
Coverity Scan Coverity Scan Build Status Coverity Scan
Drone Cloud Drone Build Status Build Status gcc/clang each version Basic test
GitHub Actions GitHub Actions Status GitHub Actions Status Basic test (Windows LLVM clang and mingw), EditorConfig Lint, Include What You Use, arm-none-eabi-gcc build
GitHub Actions reviewdog GitHub Actions Reviewdog Status Reviewdog (shellcheck, cpplint)
GitHub Actions Update GitHubPages Update GitHubPages Status Update documents
GitLab CI GitLab CI pipeline status GitLab CI pipeline status Google Test/Google Mock compatibility (HEAD)
Peakflow Peakflow Build Status Peakflow Build Status
Razorops - - CentOS7 Basic test
Scrutinizer Scrutinizer Build Status Scrutinizer Build Status iuwandbox tests
Semaphore Semaphore Build Status Semaphore Build Status Scan-build
Semaphore 2.0 Semaphore 2.0 Build Status Semaphore 2.0 Build Status Scan-build, Basic test, sample run
Shippable Shippable Run Status Run Status CentOS gcc/clang Baisc test
Travis CI Travis-CI Build Status Travis-CI Build Status Basic tests, Google Test compatibility, Coverage, Coverity-scan
Wercker wercker status wercker status gtest compatible test for released versions / gtest version detect test

Basic test

Compiler and OS tests status

Coverage

Coveralls Coverage Status

Codecov
Codecov

Contributing change

Please read the CONTRIBUTING.md for details on how to contribute to this project.

License

Copyright (c) 2011-2020, Takazumi Shirayanagi,
All rights reserved.

This software is released under the New(3-clause) BSD License, see LICENSE

If you distribute iutest, you might enjoy the [LICENSE-MIXING](docs/LICENSE-MIXING) document.