Skip to content

erbsland-dev/erbsland-unittest

The Erbsland Unit Testing System

Welcome to Erbsland UnitTest, a standalone unit testing system designed for testing Erbsland libraries and applications. Our unit testing system is built with a focus on minimal dependencies, making it theoretically dependency-free. For a more convenient usage, it requires only a minimal set of dependencies (C++, CMake, Python) and is compatible with any C++17 or later compiler.

Where to start?

Please read the quick start guide where you get a step-by-step guide how to set up your first unit test.

👉 Quick Start 👈

Or just have a look at the example project that demonstrates the recommended project structure and most of the basic features.

👉 Example Project 👈

Documentation

Read the full documentation where you learn how to set up and write unit tests:

👉 Documentation 👈

Requirements

  • Code Level Requirements
    • A C++ compiler compatible with C++17 or later versions.
    • A C++ standard library that supports C++17 features.
  • Build and Metadata System Requirements:
    • CMake version 3.25 or newer.
    • Python 3.11 or newer to compile the metadata.

👉 Requirements 👈

Goals

  • Dependency-Free
  • User-Friendly
  • Minimalistic
  • Modern
  • Secure

👉 More about the goals... 👈

Bugreports and Feature Requests

Please use the GitHub issue tracker to report bugs or request features:

👉 Report an Issue 👈

License

Copyright © 2023 Tobias Erbsland https://erbsland.dev/ and EducateIT GmbH https://educateit.ch/ According to the copyright terms specified in the file "COPYRIGHT.md".

SPDX-License-Identifier: LGPL-3.0-or-later

This program is free software: you can redistribute it and/or modify it under the terms of the GNU Lesser General Public License as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.

This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU Lesser General Public License for more details.

You should have received a copy of the GNU Lesser General Public License along with this program. If not, see https://www.gnu.org/licenses/.