AgentStack
Browse Sign in
Browse Why AgentStack Sell Docs
Sign in
SKILL verified MIT Self-run

Ros2 Testing

skill-leehyunbin0131-claude-ros2-skills-ros2-testing · by Leehyunbin0131

Testing: launch_testing, gtest/pytest, rosbag2 C++/Python APIs, ros2trace profiling.

No reviews yet
0 installs
9 views
0.0% view→install

Install

$ agentstack add skill-leehyunbin0131-claude-ros2-skills-ros2-testing

✓ scanned · ✓ verified, works with Claude Code, Cursor, and more.

Security review

✓ Passed

No issues found. Passed automated security review. · v0.1.0 How review works →

  • Prompt-injection patterns
  • Secret / credential exfiltration
  • Dangerous shell & filesystem operations
  • Untrusted network calls
  • Known-malicious package signatures

What it can access

  • Network access No
  • Filesystem access No
  • Shell / process execution No
  • Environment & secrets No
  • Dynamic code execution No

From automated source analysis of v0.1.0. “Used” means the capability is present in the source — more access means more to trust, not that it’s unsafe.

View the full security report →

Verified badge

Passed review? Show it. Paste this badge into your README, it links to the public security report.

AgentStack Verified badge Links to your public security report.
[![AgentStack Verified](https://agentstack.voostack.com/badges/verified.svg)](https://agentstack.voostack.com/security/report/skill-leehyunbin0131-claude-ros2-skills-ros2-testing)

Reliability & compatibility

Security review passed
0 installs to date
no reviews yet
18d ago

Declared compatibility

Claude CodeClaude Desktop

Compatibility is declared by the source manifest. End-to-end runtime verification is coming, see below.

Preview Execution monitoring

We're building live execution health for every listing: tool-call success rate, median latency, uptime, and last-checked timestamps, measured, not self-reported. It isn't live yet, so we don't show numbers we can't stand behind.

How agent discovery & health will work →
Are you the author of Ros2 Testing? Claim this listing to set pricing, connect Stripe payouts, and keep 70% of every sale.
Sign up to claim

About

ROS 2 Testing, Rosbag2 & Tracing Instructions (Ubuntu 24.04 LTS & ROS 2 Jazzy)

1. Core Principles & Architecture

  • Target OS & ROS Distro: Ubuntu 24.04 LTS & ROS 2 Jazzy Jalisco.
  • Quality & Diagnostics Stack: Integration testing via launch_testing, unit testing via ament_cmake_gtest / pytest, data recording/playback programmatically via rosbag2 C++/Python APIs, and performance profiling via ros2trace.
  • Zero-Hallucination Policy: Never speculate about rosbag2 C++/Python API methods (open, write, create_topic) or launch_testing assertions. Verify all signatures against official ROS 2 Jazzy documentation.

2. Official Documentation Catalog

A. Master Documentation & Tutorials

  • Writing Integration Tests with launch_testing: https://docs.ros.org/en/jazzy/Tutorials/Intermediate/Testing/Integration.html
  • launch_testing API Docs: https://docs.ros.org/en/jazzy/p/launch_testing/
  • rosbag2_cpp API Docs: https://docs.ros.org/en/jazzy/p/rosbag2_cpp/
  • rosbag2_py API Docs: https://docs.ros.org/en/jazzy/p/rosbag2_py/
  • ROS 2 Tracing Guide (ros2_tracing): https://docs.ros.org/en/jazzy/Tutorials/Advanced/ROS2-Tracing-Trace-and-Analyze.html
  • Rosbag2 Official Repository: https://github.com/ros2/rosbag2

3. Key Concepts & Code Patterns

A. Programmatic Rosbag2 Writer (C++)

#include 
#include 

rosbag2_cpp::Writer writer;
writer.open("my_bag");
writer.create_topic({0, "chatter", "std_msgs/msg/String", "cdr", {}, ""});
writer.write(msg, "chatter", clock.now());

B. Integration Testing (launch_testing Python)

import unittest
import launch
import launch_ros.actions
import launch_testing
import launch_testing.actions
import launch_testing.asserts
def generate_test_description():
    node = launch_ros.actions.Node(package='demo_nodes_cpp', executable='talker')
    return launch.LaunchDescription([
        node,
        launch_testing.actions.ReadyToTest()
    ]), {'talker_node': node}

class TestTalkerNode(unittest.TestCase):
    def test_node_start(self, talker_node):
        self.assertIsNotNone(talker_node)

@launch_testing.post_shutdown_test()
class TestShutdown(unittest.TestCase):
    def test_exit_code(self, proc_info):
        launch_testing.asserts.assertExitCodes(proc_info)

Source & license

This open-source skill is cataloged on AgentStack and links to its original source — we do not rehost the code.

Install and usage instructions live in the source repository linked above.

Reviews

No reviews yet, be the first.

Versions

  • v0.1.0 Imported from the upstream source.