ROS 2 devs get YAML-to-pytest testing tool
A YAML-to-pytest generator cuts ROS 2 integration testing from months to hours
Willore, a PhD student, created `ros2_test_compose` to automate ROS 2 integration testing by converting YAML files into pytest/launch_test suites. Unlike traditional methods that require writing Python-based tests (e.g., `ros2-easy-test`), this tool lets developers describe tests purely in YAML, reducing boilerplate and cutting test development time from months to hours.
The package is designed for rapidly evolving ROS 2 projects where internal functions change frequently but overall system behavior must remain stable. By abstracting test logic into YAML, developers can focus on defining test cases rather than debugging test infrastructure. This approach is particularly useful for academic researchers and teams managing sprawling, multi-repo ROS 2 codebases.
While YAML-based testing isnβt new, `ros2_test_compose` fills a gap in the ROS 2 ecosystem by prioritizing speed and simplicity over flexibility. The tool is open-source and available now, targeting ROS 2βs `Quality Assurance` workflows.
- Generates pytest/launch_test suites directly from YAML files, eliminating Python code
- Reduces ROS 2 integration testing time from months to hours for growing codebases
- Outperforms tools like `ros2-easy-test` by focusing on rapid YAML-based test definition
Why It Matters
Accelerates ROS 2 integration testing by 10-100x, enabling faster iteration for researchers and teams