[First Release] rtest - ROS 2 Unit Tests Framework

Hello everyone,
Happy to share that at Spyrosoft we’ve convinced the right people and just released a first version of our ROS 2 Unit Tests Framework (rtest) open-source!

rtest

  • enables writing reliable, fully repeatable unit tests in ROS 2 Jazzy
  • provides mocking capabilities for publishers, subscribers, services, and timers without requiring modifications to the production code
  • maintains full compatibility with ROS2’s internal components while allowing to test nodes in isolation.
  • integrates seamlessly with ROS 2’s CMake build system and Google Mock and provides a familiar testing and significantly reduced test flakiness in Continuous Integration pipelines.

Go to → GitHub - Beam-and-Spyrosoft/rtest

Open-source - licensed under the APACHE 2.0 License

Developed as a joint cooperation of Spyrosoft and Beam.

Thank you to the authors! : @Mariusz_Szczepanik , Sławomir Cielepak @slci , Gary Cross, Guy Burroughes

And thanks @mjcarroll @gbiggs for the pre-release feedback! :slight_smile:

22 Likes

This new testing package from Spyrosoft and Beam is a massively useful tool. It makes it so much easier to test individual nodes, and groups of nodes that form a subset of your system. Mocking and test isolation are now fundamental techniques in software engineering. I encourage everyone to try rtest out and see how much easier it makes maintaining the quality of your nodes and systems!

5 Likes