CheckOps home

Tools directory

C

CheckOps

Ceedling

Ceedling is an MIT build and test system for C projects from ThrowTheSwitch, combining Unity, CMock and CException for embedded unit testing.

Visit website

Latest public signals

Not refreshed yet. Refresh reads the public site and, when the entry has a GitHub repository, the latest release.

Visit Website

Introduction

Ceedling can build release artefacts but is especially adept at building unit test suites for C projects, including tricky embedded systems. It ties together Unity for assertions, CMock for generated mocks and CException for exception handling.

It is command-line driven: ceedling test:all runs every test, and project.yml configures paths, toolchains and plugins. Plugins add coverage via gcov, reports and more. Generated and framework code is visible.

In the quality loop Ceedling runs host-based unit tests for firmware.

The source code is at ThrowTheSwitch/Ceedling on GitHub under the MIT licence, with about 864 stars; the most recent commit was on 11 November 2026.

Features

  1. Unity integration: Assertions.
  2. CMock: Generated mocks from headers.
  3. CException: Exception handling for C.
  4. project.yml: Central configuration.
  5. Plugins: Coverage and reports.
  6. Toolchain flexibility: gcc or cross-compilers.

Pros

  1. Complete toolkit: Build, mock and test together.
  2. Free to use: Open source under the MIT licence, so the core tool costs nothing to use.
  3. Actively maintained: The repository had commits as recent as 11 November 2026.

Cons

  1. Ruby dependency: Ceedling runs on Ruby.
  2. Conventions: Project layout expectations.
  3. Host vs target: On-target runs need setup.
gem install ceedling
ceedling new my_project
ceedling test:all

Resources:

Pricing

Ceedling is free and open source under the MIT licence.

  1. Embedded C teams adopting TDD.

Conclusion

Ceedling is the easiest way to get Unity and CMock working together.

Run on the host first, then on target if needed.

On CheckOps, Ceedling is filed under the Unit testing stage. Related tools listed here include Renode, cmocka, Unity Test (C), labgrid, pytest-embedded and Wokwi. Before standardising on one, compare recent maintenance activity, the pricing model as your usage grows, and the integrations you rely on today. Information on this page was verified against the official website, documentation and repository on 11 November 2026.

Alternatives

Other tools on CheckOps that cover similar ground. Open a page, or compare one with Ceedling side by side.