Skip to content

rtest

  • Software
  • Middleware
  • Tool

A C++ testing framework for ROS 2 nodes that replaces real middleware with controllable mocks, so unit and integration tests run repeatably without flaky results.

Made by Beam and Spyrosoft.

Source on GitHub: github.com/Beam-and-Spyrosoft/rtest (opens in a new tab). Facts read at commit 755316d (opens in a new tab).

Licenses

Code
Apache-2.0 (opens in a new tab)

Read by Robotheca from LICENSE (opens in a new tab) (Apache-2.0) at commit 755316d (opens in a new tab), on 22 Oct 2026.

Commercial use
Yes

What it does

  • Checks whether a tested node has created its publishers, subscribers, timers, service clients and servers, and action clients and servers.
  • Sets expectations on mocked entities, such as messages published on a topic, requests sent by clients, and action goals, feedback and results.
  • Injects messages and service requests directly, and fires timer callbacks under simulated time control.
  • Runs tests single-threaded with controllable execution.
  • Needs access to the source of the components under test, since they must be compiled directly into the test build rather than linked as libraries.
  • Built on GoogleTest and GoogleMock, with rclcpp, ament_cmake_ros and an optional Pixi environment for building.

Written by Robotheca from the project's README (opens in a new tab) at commit 755316d.

Getting started

Difficulty
Advanced
Hardware it needs, as the project states it
Supported on Linux (x86_64, aarch64) and macOS (Apple Silicon, Intel) with ROS 2 Jazzy, Kilted or Lyrical Luth.

Maintenance

Status
Active: a commit in the last 90 days
Newest commit
19 Oct 2026 on main
Latest release
rtest 0.2.5 (8 Oct 2026)

Checked on GitHub on 22 Oct 2026.

Robots that can run it

No robot on Robotheca is linked to it yet. Links come from a robot's robot.yaml, from its dependency files read as text, or from Robotheca's editors.

Robotheca lists software as a reference: nothing is hosted or run here, and every fact links to where it was read.