How do you test your ROS2 packages?
Unit tests alone are not enough to cover an entire project, so a layered testing strategy is essential. Tracking the right metrics from these tests is also an important part of the process.

CI for ROS is something every company needs, and for that reason I started developing a library on top of the existing and well-established Robot Framework.
The goal of ROS2 Robot Framework is to enable easy, fast, scalable, and measurable ROS2 testing by leveraging the keyword-driven approach of Robot Framework. At the moment it supports basic ROS2 functionalities (publish-subscribe, services, launch files, etc.) and has reached a point where it can also support Nav2, though there are still gaps to fill.
If this sounds interesting and you would like to contribute, don’t hesitate to reach out.
Github: GitHub - bekirbostanci/ros2_robotframework: Test ROS2 package with Robot Framework
PyPI: ros2-robotframework · PyPI
3 Likes
This looks super helpful and I like that it is all packaged up and easy to install!
If I may offer some unsolicited advice, I don’t think that “Robot Framework” is an appropriate name for this project. “Robot Framework” is both generic and confusing; it doesn’t really describe what the package actually does. It may be worth reading our guidance on package naming.
2 Likes
Hey Katherine
I understand your concern. Just to clarify: my package is named ros2_robotframework because it is a Robot Framework library that provides ROS 2 functionality. Robot Framework itself is not a robotics framework—it is a generic open-source automation framework for acceptance testing and robotic process automation (RPA).
Since my package is specifically a Robot Framework library, the naming was intentional. However, I do see how the word “Robot” alone can be confusing, because many people associate it with physical robots rather than the Robot Framework test automation tool.
2 Likes