Package symbol

autoware_test_utils package from autoware_core repo

autoware_adapi_adaptors autoware_adapi_specs autoware_core_api autoware_default_adapi autoware_core autoware_agnocast_wrapper autoware_component_interface_admission autoware_component_interface_specs autoware_component_interface_utils autoware_geography_utils autoware_global_parameter_loader autoware_interface_spec_lint autoware_interpolation autoware_kalman_filter autoware_lanelet2_utils autoware_marker_utils autoware_motion_utils autoware_node autoware_object_recognition_utils autoware_osqp_interface autoware_point_types autoware_qos_utils autoware_qp_interface autoware_signal_processing autoware_trajectory autoware_vehicle_info_utils autoware_command_gate autoware_core_control autoware_simple_pure_pursuit autoware_awsim_sensor_kit_description autoware_sample_sensor_kit_description autoware_sample_vehicle_description autoware_core_localization autoware_ekf_localizer autoware_gyro_odometer autoware_localization_util autoware_ndt_scan_matcher autoware_pose_initializer autoware_stop_filter autoware_twist2accel autoware_core_map autoware_lanelet2_map_visualizer autoware_map_height_fitter autoware_map_loader autoware_map_projection_loader autoware_core_perception autoware_euclidean_cluster_object_detector autoware_ground_filter autoware_perception_objects_converter autoware_core_planning autoware_mission_planner autoware_objects_of_interest_marker_interface autoware_path_generator autoware_planning_factor_interface autoware_planning_test_manager autoware_planning_topic_converter autoware_route_handler autoware_velocity_smoother autoware_behavior_velocity_planner autoware_behavior_velocity_planner_common autoware_behavior_velocity_stop_line_module autoware_motion_velocity_obstacle_stop_module autoware_motion_velocity_planner autoware_motion_velocity_planner_common autoware_core_sensing autoware_crop_box_filter autoware_downsample_filters autoware_gnss_poser autoware_vehicle_velocity_converter autoware_pyplot autoware_test_node autoware_test_utils autoware_testing autoware_core_vehicle

ROS Distro
humble

Package Summary

Version 1.10.0
License Apache License 2.0
Build type AMENT_CMAKE
Use RECOMMENDED

Repository Summary

Description
Checkout URI https://github.com/autowarefoundation/autoware_core.git
VCS Type git
VCS Version main
Last Updated 2026-10-23
Dev Status DEVELOPED
Released RELEASED
Contributing Help Wanted (-)
Good First Issues (-)
Pull Requests to Review (-)

Package Description

ROS 2 node for testing interface of the nodes in planning module

Maintainers

  • Kyoichi Sugahara
  • Takamasa Horibe
  • Zulfaqar Azmi
  • Mamoru Sobue
  • Yukinari Hisaki
  • Jian Kang
  • Junya Sasaki

Authors

  • Kyoichi Sugahara

Test Utils

Background

Several Autoware’s components and modules have already adopted unit testing, so a common library to ease the process of writing unit tests is necessary.

Purpose

The objective of the test_utils is to develop a unit testing library for the Autoware components. This library will include

  • commonly used functions
  • input/mock data parser
  • maps for testing
  • common routes and mock data for testing.

Available Maps

The following maps are available here

Common

The common map contains multiple types of usable inputs, including shoulder lanes, intersections, and some regulatory elements. The common map is named lanelet2_map.osm in the folder.

common

2 km Straight

The 2 km straight lanelet map consists of two lanes that run in the same direction. The map is named 2km_test.osm.

two_km

The following illustrates the design of the map.

straight_diagram

road_shoulders

The road_shoulders lanelet map consist of a variety of pick-up/drop-off site maps with road_shoulder tags including:

  • pick-up/drop-off sites on the side of street lanes
  • pick-up/drop-off sites on the side of curved lanes
  • pick-up/drop-off sites inside a private area

road_shoulder_test

You can easily launch planning_simulator by

ros2 launch autoware_test_utils psim_road_shoulder.launch.xml vehicle_model:=<> sensor_model:=<> use_sim_time:=true

intersection

The intersections lanelet map consist of a variety of intersections including:

  • 4-way crossing with traffic light
  • 4-way crossing without traffic light
  • T-shape crossing without traffic light
  • intersection with a loop
  • complicated intersection

intersection_test

You can easily launch planning_simulator by

ros2 launch autoware_test_utils psim_intersection.launch.xml vehicle_model:=<> sensor_model:=<> use_sim_time:=true

overlap

The overlap lanelet map includes

  • U-turn with a gap
  • U-turn with full crossing
  • U-turn with half crossing
  • overpass

overlap_test

Example use cases

Autoware Planning Test Manager

The goal of the Autoware Planning Test Manager is to test planning module nodes. The PlanningInterfaceTestManager class (source code) creates wrapper functions based on the test_utils functions.

Generate test data for unit testing

As presented in this PR description, the user can save a snapshot of the scene to a yaml file while running Planning Simulation on the test map.

ros2 launch autoware_test_utils psim_road_shoulder.launch.xml
ros2 launch autoware_test_utils psim_intersection.launch.xml

It uses the autoware autoware_sample_vehicle_description and autoware_sample_sensor_kit by default, and autoware_test_utils/config/test_vehicle_info.param.yaml is exactly the same as that of autoware_sample_vehicle_description. If specified, vehicle_model/sensor_model argument is available.

ros2 service call /autoware_test_utils/topic_snapshot_saver std_srvs/srv/Empty \{\}

File truncated at 100 lines see the full file

CHANGELOG

Changelog for package autoware_test_utils

1.1.0 (2025-05-01)

  • test(path_generator): add tests for path cut feature (#268)

    • add map for test
    • add overpass map
    • refactor & enhance base test class
    • add tests
    • style(pre-commit): autofix

    * fix year created Co-authored-by: Kosuke Takeuchi <<kosuke.tnp@gmail.com>>

    • anonymize test map
    • style(pre-commit): autofix
    • add test map info to README
    • style(pre-commit): autofix
    • make tests work with autoware_trajectory
    • include necessary header
    • fix test case

    * style(pre-commit): autofix ---------Co-authored-by: pre-commit-ci[bot] <66853113+pre-commit-ci[bot]@users.noreply.github.com> Co-authored-by: Kosuke Takeuchi <<kosuke.tnp@gmail.com>> Co-authored-by: Yutaka Kondo <<yutaka.kondo@youtalk.jp>>

  • chore: include iostream and link yaml-cpp for Jazzy (#351)

  • Contributors: Mitsuhiro Sakamoto, Tim Clephas

1.10.0 (2026-09-28)

  • Merge remote-tracking branch 'origin/main' into tmp/bot/bump_version_base

  • fix(autoware_test_utils): fix the planning test manager links (#1425) docs(autoware_test_utils): point the planning test manager links at its new path The package moved from testing/ to planning/ in #1383, and these two links still point at the old path, so both return 404.

  • fix(testing): declare the dependencies these packages use (#1374) Each of these packages uses a package it never declares. Either it includes a header of that package, or it names a symbol of it while the header arrives through another dependency. Both build today only because some declared dependency re-exports the owner, so a change in an unrelated repository can break them without anything here changing. The tag follows where the dependency is used: a use in an installed header or in code compiled into the library takes <depend>, one reached only from test/ takes <test_depend>. System libraries are named by the rosdep key this workspace already prefers. Boost.Serialization is declared separately from libboost-dev because it needs its own library at link time.

  • fix(autoware_test_utils): guard the yaml-cpp target for humble (#1354) The link moved to yaml-cpp::yaml-cpp. Ubuntu 24.04 ships yaml-cpp 0.8, which exports that namespaced target, so jazzy passes. Ubuntu 22.04 ships 0.7, which exports the target without a namespace, so every humble build of this package stops at the CMake generate step: Target "autoware_test_utils" links to target "yaml-cpp::yaml-cpp" but the target was not found. Keep the namespaced target, and define it when the config does not give one. The guard is copied from autoware_map_loader, which already carries it. Use the same target for topic_snapshot_saver, so both link lines agree.

  • fix(autoware_test_utils): link to yaml-cpp target (#1272) Link autoware_test_utils to yaml-cpp target This upstreams RoboStack downstream patch [patch/ros-rolling-autoware-test-utils.patch]{.title-ref}. Best-guess rationale: using yaml-cpp::yaml-cpp makes the dependency explicit for CMake-based package managers, and suppressing deprecated declaration warnings outside MSVC keeps current dependency warnings from breaking strict builds. Co-authored-by: Daisuke Nishimatsu <<nishimarudai@gmail.com>> Co-authored-by: Junya Sasaki <<j2sasaki1990@gmail.com>>

  • fix: autoware_test_manager:Fix flaky No subscriber for <topic> failure (#1181)

    • fix:autoware_test_manager:Fix flaky No subscriber for <topic> failures in autoware_planning_test_manager CI tests (closes #1177)

    * style(pre-commit): autofix ---------Co-authored-by: pre-commit-ci[bot] <66853113+pre-commit-ci[bot]@users.noreply.github.com> Co-authored-by: Yutaka Kondo <<yutaka.kondo@youtalk.jp>>

File truncated at 100 lines see the full file

Launch files

No launch files found

Messages

No message files found.

Services

No service files found

Plugins

No plugins found.

Recent questions tagged autoware_test_utils at Robotics Stack Exchange

Package symbol

autoware_test_utils package from autoware_core repo

autoware_adapi_adaptors autoware_adapi_specs autoware_core_api autoware_default_adapi autoware_core autoware_agnocast_wrapper autoware_component_interface_admission autoware_component_interface_specs autoware_component_interface_utils autoware_geography_utils autoware_global_parameter_loader autoware_interface_spec_lint autoware_interpolation autoware_kalman_filter autoware_lanelet2_utils autoware_marker_utils autoware_motion_utils autoware_node autoware_object_recognition_utils autoware_osqp_interface autoware_point_types autoware_qos_utils autoware_qp_interface autoware_signal_processing autoware_trajectory autoware_vehicle_info_utils autoware_command_gate autoware_core_control autoware_simple_pure_pursuit autoware_awsim_sensor_kit_description autoware_sample_sensor_kit_description autoware_sample_vehicle_description autoware_core_localization autoware_ekf_localizer autoware_gyro_odometer autoware_localization_util autoware_ndt_scan_matcher autoware_pose_initializer autoware_stop_filter autoware_twist2accel autoware_core_map autoware_lanelet2_map_visualizer autoware_map_height_fitter autoware_map_loader autoware_map_projection_loader autoware_core_perception autoware_euclidean_cluster_object_detector autoware_ground_filter autoware_perception_objects_converter autoware_core_planning autoware_mission_planner autoware_objects_of_interest_marker_interface autoware_path_generator autoware_planning_factor_interface autoware_planning_test_manager autoware_planning_topic_converter autoware_route_handler autoware_velocity_smoother autoware_behavior_velocity_planner autoware_behavior_velocity_planner_common autoware_behavior_velocity_stop_line_module autoware_motion_velocity_obstacle_stop_module autoware_motion_velocity_planner autoware_motion_velocity_planner_common autoware_core_sensing autoware_crop_box_filter autoware_downsample_filters autoware_gnss_poser autoware_vehicle_velocity_converter autoware_pyplot autoware_test_node autoware_test_utils autoware_testing autoware_core_vehicle

ROS Distro
jazzy

Package Summary

Version 1.10.0
License Apache License 2.0
Build type AMENT_CMAKE
Use RECOMMENDED

Repository Summary

Description
Checkout URI https://github.com/autowarefoundation/autoware_core.git
VCS Type git
VCS Version main
Last Updated 2026-10-23
Dev Status DEVELOPED
Released RELEASED
Contributing Help Wanted (-)
Good First Issues (-)
Pull Requests to Review (-)

Package Description

ROS 2 node for testing interface of the nodes in planning module

Maintainers

  • Kyoichi Sugahara
  • Takamasa Horibe
  • Zulfaqar Azmi
  • Mamoru Sobue
  • Yukinari Hisaki
  • Jian Kang
  • Junya Sasaki

Authors

  • Kyoichi Sugahara

Test Utils

Background

Several Autoware’s components and modules have already adopted unit testing, so a common library to ease the process of writing unit tests is necessary.

Purpose

The objective of the test_utils is to develop a unit testing library for the Autoware components. This library will include

  • commonly used functions
  • input/mock data parser
  • maps for testing
  • common routes and mock data for testing.

Available Maps

The following maps are available here

Common

The common map contains multiple types of usable inputs, including shoulder lanes, intersections, and some regulatory elements. The common map is named lanelet2_map.osm in the folder.

common

2 km Straight

The 2 km straight lanelet map consists of two lanes that run in the same direction. The map is named 2km_test.osm.

two_km

The following illustrates the design of the map.

straight_diagram

road_shoulders

The road_shoulders lanelet map consist of a variety of pick-up/drop-off site maps with road_shoulder tags including:

  • pick-up/drop-off sites on the side of street lanes
  • pick-up/drop-off sites on the side of curved lanes
  • pick-up/drop-off sites inside a private area

road_shoulder_test

You can easily launch planning_simulator by

ros2 launch autoware_test_utils psim_road_shoulder.launch.xml vehicle_model:=<> sensor_model:=<> use_sim_time:=true

intersection

The intersections lanelet map consist of a variety of intersections including:

  • 4-way crossing with traffic light
  • 4-way crossing without traffic light
  • T-shape crossing without traffic light
  • intersection with a loop
  • complicated intersection

intersection_test

You can easily launch planning_simulator by

ros2 launch autoware_test_utils psim_intersection.launch.xml vehicle_model:=<> sensor_model:=<> use_sim_time:=true

overlap

The overlap lanelet map includes

  • U-turn with a gap
  • U-turn with full crossing
  • U-turn with half crossing
  • overpass

overlap_test

Example use cases

Autoware Planning Test Manager

The goal of the Autoware Planning Test Manager is to test planning module nodes. The PlanningInterfaceTestManager class (source code) creates wrapper functions based on the test_utils functions.

Generate test data for unit testing

As presented in this PR description, the user can save a snapshot of the scene to a yaml file while running Planning Simulation on the test map.

ros2 launch autoware_test_utils psim_road_shoulder.launch.xml
ros2 launch autoware_test_utils psim_intersection.launch.xml

It uses the autoware autoware_sample_vehicle_description and autoware_sample_sensor_kit by default, and autoware_test_utils/config/test_vehicle_info.param.yaml is exactly the same as that of autoware_sample_vehicle_description. If specified, vehicle_model/sensor_model argument is available.

ros2 service call /autoware_test_utils/topic_snapshot_saver std_srvs/srv/Empty \{\}

File truncated at 100 lines see the full file

CHANGELOG

Changelog for package autoware_test_utils

1.1.0 (2025-05-01)

  • test(path_generator): add tests for path cut feature (#268)

    • add map for test
    • add overpass map
    • refactor & enhance base test class
    • add tests
    • style(pre-commit): autofix

    * fix year created Co-authored-by: Kosuke Takeuchi <<kosuke.tnp@gmail.com>>

    • anonymize test map
    • style(pre-commit): autofix
    • add test map info to README
    • style(pre-commit): autofix
    • make tests work with autoware_trajectory
    • include necessary header
    • fix test case

    * style(pre-commit): autofix ---------Co-authored-by: pre-commit-ci[bot] <66853113+pre-commit-ci[bot]@users.noreply.github.com> Co-authored-by: Kosuke Takeuchi <<kosuke.tnp@gmail.com>> Co-authored-by: Yutaka Kondo <<yutaka.kondo@youtalk.jp>>

  • chore: include iostream and link yaml-cpp for Jazzy (#351)

  • Contributors: Mitsuhiro Sakamoto, Tim Clephas

1.10.0 (2026-09-28)

  • Merge remote-tracking branch 'origin/main' into tmp/bot/bump_version_base

  • fix(autoware_test_utils): fix the planning test manager links (#1425) docs(autoware_test_utils): point the planning test manager links at its new path The package moved from testing/ to planning/ in #1383, and these two links still point at the old path, so both return 404.

  • fix(testing): declare the dependencies these packages use (#1374) Each of these packages uses a package it never declares. Either it includes a header of that package, or it names a symbol of it while the header arrives through another dependency. Both build today only because some declared dependency re-exports the owner, so a change in an unrelated repository can break them without anything here changing. The tag follows where the dependency is used: a use in an installed header or in code compiled into the library takes <depend>, one reached only from test/ takes <test_depend>. System libraries are named by the rosdep key this workspace already prefers. Boost.Serialization is declared separately from libboost-dev because it needs its own library at link time.

  • fix(autoware_test_utils): guard the yaml-cpp target for humble (#1354) The link moved to yaml-cpp::yaml-cpp. Ubuntu 24.04 ships yaml-cpp 0.8, which exports that namespaced target, so jazzy passes. Ubuntu 22.04 ships 0.7, which exports the target without a namespace, so every humble build of this package stops at the CMake generate step: Target "autoware_test_utils" links to target "yaml-cpp::yaml-cpp" but the target was not found. Keep the namespaced target, and define it when the config does not give one. The guard is copied from autoware_map_loader, which already carries it. Use the same target for topic_snapshot_saver, so both link lines agree.

  • fix(autoware_test_utils): link to yaml-cpp target (#1272) Link autoware_test_utils to yaml-cpp target This upstreams RoboStack downstream patch [patch/ros-rolling-autoware-test-utils.patch]{.title-ref}. Best-guess rationale: using yaml-cpp::yaml-cpp makes the dependency explicit for CMake-based package managers, and suppressing deprecated declaration warnings outside MSVC keeps current dependency warnings from breaking strict builds. Co-authored-by: Daisuke Nishimatsu <<nishimarudai@gmail.com>> Co-authored-by: Junya Sasaki <<j2sasaki1990@gmail.com>>

  • fix: autoware_test_manager:Fix flaky No subscriber for <topic> failure (#1181)

    • fix:autoware_test_manager:Fix flaky No subscriber for <topic> failures in autoware_planning_test_manager CI tests (closes #1177)

    * style(pre-commit): autofix ---------Co-authored-by: pre-commit-ci[bot] <66853113+pre-commit-ci[bot]@users.noreply.github.com> Co-authored-by: Yutaka Kondo <<yutaka.kondo@youtalk.jp>>

File truncated at 100 lines see the full file

Launch files

No launch files found

Messages

No message files found.

Services

No service files found

Plugins

No plugins found.

Recent questions tagged autoware_test_utils at Robotics Stack Exchange

No version for distro kilted showing humble. Known supported distros are highlighted in the buttons above.
Package symbol

autoware_test_utils package from autoware_core repo

autoware_adapi_adaptors autoware_adapi_specs autoware_core_api autoware_default_adapi autoware_core autoware_agnocast_wrapper autoware_component_interface_admission autoware_component_interface_specs autoware_component_interface_utils autoware_geography_utils autoware_global_parameter_loader autoware_interface_spec_lint autoware_interpolation autoware_kalman_filter autoware_lanelet2_utils autoware_marker_utils autoware_motion_utils autoware_node autoware_object_recognition_utils autoware_osqp_interface autoware_point_types autoware_qos_utils autoware_qp_interface autoware_signal_processing autoware_trajectory autoware_vehicle_info_utils autoware_command_gate autoware_core_control autoware_simple_pure_pursuit autoware_awsim_sensor_kit_description autoware_sample_sensor_kit_description autoware_sample_vehicle_description autoware_core_localization autoware_ekf_localizer autoware_gyro_odometer autoware_localization_util autoware_ndt_scan_matcher autoware_pose_initializer autoware_stop_filter autoware_twist2accel autoware_core_map autoware_lanelet2_map_visualizer autoware_map_height_fitter autoware_map_loader autoware_map_projection_loader autoware_core_perception autoware_euclidean_cluster_object_detector autoware_ground_filter autoware_perception_objects_converter autoware_core_planning autoware_mission_planner autoware_objects_of_interest_marker_interface autoware_path_generator autoware_planning_factor_interface autoware_planning_test_manager autoware_planning_topic_converter autoware_route_handler autoware_velocity_smoother autoware_behavior_velocity_planner autoware_behavior_velocity_planner_common autoware_behavior_velocity_stop_line_module autoware_motion_velocity_obstacle_stop_module autoware_motion_velocity_planner autoware_motion_velocity_planner_common autoware_core_sensing autoware_crop_box_filter autoware_downsample_filters autoware_gnss_poser autoware_vehicle_velocity_converter autoware_pyplot autoware_test_node autoware_test_utils autoware_testing autoware_core_vehicle

ROS Distro
humble

Package Summary

Version 1.10.0
License Apache License 2.0
Build type AMENT_CMAKE
Use RECOMMENDED

Repository Summary

Description
Checkout URI https://github.com/autowarefoundation/autoware_core.git
VCS Type git
VCS Version main
Last Updated 2026-10-23
Dev Status DEVELOPED
Released RELEASED
Contributing Help Wanted (-)
Good First Issues (-)
Pull Requests to Review (-)

Package Description

ROS 2 node for testing interface of the nodes in planning module

Maintainers

  • Kyoichi Sugahara
  • Takamasa Horibe
  • Zulfaqar Azmi
  • Mamoru Sobue
  • Yukinari Hisaki
  • Jian Kang
  • Junya Sasaki

Authors

  • Kyoichi Sugahara

Test Utils

Background

Several Autoware’s components and modules have already adopted unit testing, so a common library to ease the process of writing unit tests is necessary.

Purpose

The objective of the test_utils is to develop a unit testing library for the Autoware components. This library will include

  • commonly used functions
  • input/mock data parser
  • maps for testing
  • common routes and mock data for testing.

Available Maps

The following maps are available here

Common

The common map contains multiple types of usable inputs, including shoulder lanes, intersections, and some regulatory elements. The common map is named lanelet2_map.osm in the folder.

common

2 km Straight

The 2 km straight lanelet map consists of two lanes that run in the same direction. The map is named 2km_test.osm.

two_km

The following illustrates the design of the map.

straight_diagram

road_shoulders

The road_shoulders lanelet map consist of a variety of pick-up/drop-off site maps with road_shoulder tags including:

  • pick-up/drop-off sites on the side of street lanes
  • pick-up/drop-off sites on the side of curved lanes
  • pick-up/drop-off sites inside a private area

road_shoulder_test

You can easily launch planning_simulator by

ros2 launch autoware_test_utils psim_road_shoulder.launch.xml vehicle_model:=<> sensor_model:=<> use_sim_time:=true

intersection

The intersections lanelet map consist of a variety of intersections including:

  • 4-way crossing with traffic light
  • 4-way crossing without traffic light
  • T-shape crossing without traffic light
  • intersection with a loop
  • complicated intersection

intersection_test

You can easily launch planning_simulator by

ros2 launch autoware_test_utils psim_intersection.launch.xml vehicle_model:=<> sensor_model:=<> use_sim_time:=true

overlap

The overlap lanelet map includes

  • U-turn with a gap
  • U-turn with full crossing
  • U-turn with half crossing
  • overpass

overlap_test

Example use cases

Autoware Planning Test Manager

The goal of the Autoware Planning Test Manager is to test planning module nodes. The PlanningInterfaceTestManager class (source code) creates wrapper functions based on the test_utils functions.

Generate test data for unit testing

As presented in this PR description, the user can save a snapshot of the scene to a yaml file while running Planning Simulation on the test map.

ros2 launch autoware_test_utils psim_road_shoulder.launch.xml
ros2 launch autoware_test_utils psim_intersection.launch.xml

It uses the autoware autoware_sample_vehicle_description and autoware_sample_sensor_kit by default, and autoware_test_utils/config/test_vehicle_info.param.yaml is exactly the same as that of autoware_sample_vehicle_description. If specified, vehicle_model/sensor_model argument is available.

ros2 service call /autoware_test_utils/topic_snapshot_saver std_srvs/srv/Empty \{\}

File truncated at 100 lines see the full file

CHANGELOG

Changelog for package autoware_test_utils

1.1.0 (2025-05-01)

  • test(path_generator): add tests for path cut feature (#268)

    • add map for test
    • add overpass map
    • refactor & enhance base test class
    • add tests
    • style(pre-commit): autofix

    * fix year created Co-authored-by: Kosuke Takeuchi <<kosuke.tnp@gmail.com>>

    • anonymize test map
    • style(pre-commit): autofix
    • add test map info to README
    • style(pre-commit): autofix
    • make tests work with autoware_trajectory
    • include necessary header
    • fix test case

    * style(pre-commit): autofix ---------Co-authored-by: pre-commit-ci[bot] <66853113+pre-commit-ci[bot]@users.noreply.github.com> Co-authored-by: Kosuke Takeuchi <<kosuke.tnp@gmail.com>> Co-authored-by: Yutaka Kondo <<yutaka.kondo@youtalk.jp>>

  • chore: include iostream and link yaml-cpp for Jazzy (#351)

  • Contributors: Mitsuhiro Sakamoto, Tim Clephas

1.10.0 (2026-09-28)

  • Merge remote-tracking branch 'origin/main' into tmp/bot/bump_version_base

  • fix(autoware_test_utils): fix the planning test manager links (#1425) docs(autoware_test_utils): point the planning test manager links at its new path The package moved from testing/ to planning/ in #1383, and these two links still point at the old path, so both return 404.

  • fix(testing): declare the dependencies these packages use (#1374) Each of these packages uses a package it never declares. Either it includes a header of that package, or it names a symbol of it while the header arrives through another dependency. Both build today only because some declared dependency re-exports the owner, so a change in an unrelated repository can break them without anything here changing. The tag follows where the dependency is used: a use in an installed header or in code compiled into the library takes <depend>, one reached only from test/ takes <test_depend>. System libraries are named by the rosdep key this workspace already prefers. Boost.Serialization is declared separately from libboost-dev because it needs its own library at link time.

  • fix(autoware_test_utils): guard the yaml-cpp target for humble (#1354) The link moved to yaml-cpp::yaml-cpp. Ubuntu 24.04 ships yaml-cpp 0.8, which exports that namespaced target, so jazzy passes. Ubuntu 22.04 ships 0.7, which exports the target without a namespace, so every humble build of this package stops at the CMake generate step: Target "autoware_test_utils" links to target "yaml-cpp::yaml-cpp" but the target was not found. Keep the namespaced target, and define it when the config does not give one. The guard is copied from autoware_map_loader, which already carries it. Use the same target for topic_snapshot_saver, so both link lines agree.

  • fix(autoware_test_utils): link to yaml-cpp target (#1272) Link autoware_test_utils to yaml-cpp target This upstreams RoboStack downstream patch [patch/ros-rolling-autoware-test-utils.patch]{.title-ref}. Best-guess rationale: using yaml-cpp::yaml-cpp makes the dependency explicit for CMake-based package managers, and suppressing deprecated declaration warnings outside MSVC keeps current dependency warnings from breaking strict builds. Co-authored-by: Daisuke Nishimatsu <<nishimarudai@gmail.com>> Co-authored-by: Junya Sasaki <<j2sasaki1990@gmail.com>>

  • fix: autoware_test_manager:Fix flaky No subscriber for <topic> failure (#1181)

    • fix:autoware_test_manager:Fix flaky No subscriber for <topic> failures in autoware_planning_test_manager CI tests (closes #1177)

    * style(pre-commit): autofix ---------Co-authored-by: pre-commit-ci[bot] <66853113+pre-commit-ci[bot]@users.noreply.github.com> Co-authored-by: Yutaka Kondo <<yutaka.kondo@youtalk.jp>>

File truncated at 100 lines see the full file

Launch files

No launch files found

Messages

No message files found.

Services

No service files found

Plugins

No plugins found.

Recent questions tagged autoware_test_utils at Robotics Stack Exchange

No version for distro lyrical showing humble. Known supported distros are highlighted in the buttons above.
Package symbol

autoware_test_utils package from autoware_core repo

autoware_adapi_adaptors autoware_adapi_specs autoware_core_api autoware_default_adapi autoware_core autoware_agnocast_wrapper autoware_component_interface_admission autoware_component_interface_specs autoware_component_interface_utils autoware_geography_utils autoware_global_parameter_loader autoware_interface_spec_lint autoware_interpolation autoware_kalman_filter autoware_lanelet2_utils autoware_marker_utils autoware_motion_utils autoware_node autoware_object_recognition_utils autoware_osqp_interface autoware_point_types autoware_qos_utils autoware_qp_interface autoware_signal_processing autoware_trajectory autoware_vehicle_info_utils autoware_command_gate autoware_core_control autoware_simple_pure_pursuit autoware_awsim_sensor_kit_description autoware_sample_sensor_kit_description autoware_sample_vehicle_description autoware_core_localization autoware_ekf_localizer autoware_gyro_odometer autoware_localization_util autoware_ndt_scan_matcher autoware_pose_initializer autoware_stop_filter autoware_twist2accel autoware_core_map autoware_lanelet2_map_visualizer autoware_map_height_fitter autoware_map_loader autoware_map_projection_loader autoware_core_perception autoware_euclidean_cluster_object_detector autoware_ground_filter autoware_perception_objects_converter autoware_core_planning autoware_mission_planner autoware_objects_of_interest_marker_interface autoware_path_generator autoware_planning_factor_interface autoware_planning_test_manager autoware_planning_topic_converter autoware_route_handler autoware_velocity_smoother autoware_behavior_velocity_planner autoware_behavior_velocity_planner_common autoware_behavior_velocity_stop_line_module autoware_motion_velocity_obstacle_stop_module autoware_motion_velocity_planner autoware_motion_velocity_planner_common autoware_core_sensing autoware_crop_box_filter autoware_downsample_filters autoware_gnss_poser autoware_vehicle_velocity_converter autoware_pyplot autoware_test_node autoware_test_utils autoware_testing autoware_core_vehicle

ROS Distro
humble

Package Summary

Version 1.10.0
License Apache License 2.0
Build type AMENT_CMAKE
Use RECOMMENDED

Repository Summary

Description
Checkout URI https://github.com/autowarefoundation/autoware_core.git
VCS Type git
VCS Version main
Last Updated 2026-10-23
Dev Status DEVELOPED
Released RELEASED
Contributing Help Wanted (-)
Good First Issues (-)
Pull Requests to Review (-)

Package Description

ROS 2 node for testing interface of the nodes in planning module

Maintainers

  • Kyoichi Sugahara
  • Takamasa Horibe
  • Zulfaqar Azmi
  • Mamoru Sobue
  • Yukinari Hisaki
  • Jian Kang
  • Junya Sasaki

Authors

  • Kyoichi Sugahara

Test Utils

Background

Several Autoware’s components and modules have already adopted unit testing, so a common library to ease the process of writing unit tests is necessary.

Purpose

The objective of the test_utils is to develop a unit testing library for the Autoware components. This library will include

  • commonly used functions
  • input/mock data parser
  • maps for testing
  • common routes and mock data for testing.

Available Maps

The following maps are available here

Common

The common map contains multiple types of usable inputs, including shoulder lanes, intersections, and some regulatory elements. The common map is named lanelet2_map.osm in the folder.

common

2 km Straight

The 2 km straight lanelet map consists of two lanes that run in the same direction. The map is named 2km_test.osm.

two_km

The following illustrates the design of the map.

straight_diagram

road_shoulders

The road_shoulders lanelet map consist of a variety of pick-up/drop-off site maps with road_shoulder tags including:

  • pick-up/drop-off sites on the side of street lanes
  • pick-up/drop-off sites on the side of curved lanes
  • pick-up/drop-off sites inside a private area

road_shoulder_test

You can easily launch planning_simulator by

ros2 launch autoware_test_utils psim_road_shoulder.launch.xml vehicle_model:=<> sensor_model:=<> use_sim_time:=true

intersection

The intersections lanelet map consist of a variety of intersections including:

  • 4-way crossing with traffic light
  • 4-way crossing without traffic light
  • T-shape crossing without traffic light
  • intersection with a loop
  • complicated intersection

intersection_test

You can easily launch planning_simulator by

ros2 launch autoware_test_utils psim_intersection.launch.xml vehicle_model:=<> sensor_model:=<> use_sim_time:=true

overlap

The overlap lanelet map includes

  • U-turn with a gap
  • U-turn with full crossing
  • U-turn with half crossing
  • overpass

overlap_test

Example use cases

Autoware Planning Test Manager

The goal of the Autoware Planning Test Manager is to test planning module nodes. The PlanningInterfaceTestManager class (source code) creates wrapper functions based on the test_utils functions.

Generate test data for unit testing

As presented in this PR description, the user can save a snapshot of the scene to a yaml file while running Planning Simulation on the test map.

ros2 launch autoware_test_utils psim_road_shoulder.launch.xml
ros2 launch autoware_test_utils psim_intersection.launch.xml

It uses the autoware autoware_sample_vehicle_description and autoware_sample_sensor_kit by default, and autoware_test_utils/config/test_vehicle_info.param.yaml is exactly the same as that of autoware_sample_vehicle_description. If specified, vehicle_model/sensor_model argument is available.

ros2 service call /autoware_test_utils/topic_snapshot_saver std_srvs/srv/Empty \{\}

File truncated at 100 lines see the full file

CHANGELOG

Changelog for package autoware_test_utils

1.1.0 (2025-05-01)

  • test(path_generator): add tests for path cut feature (#268)

    • add map for test
    • add overpass map
    • refactor & enhance base test class
    • add tests
    • style(pre-commit): autofix

    * fix year created Co-authored-by: Kosuke Takeuchi <<kosuke.tnp@gmail.com>>

    • anonymize test map
    • style(pre-commit): autofix
    • add test map info to README
    • style(pre-commit): autofix
    • make tests work with autoware_trajectory
    • include necessary header
    • fix test case

    * style(pre-commit): autofix ---------Co-authored-by: pre-commit-ci[bot] <66853113+pre-commit-ci[bot]@users.noreply.github.com> Co-authored-by: Kosuke Takeuchi <<kosuke.tnp@gmail.com>> Co-authored-by: Yutaka Kondo <<yutaka.kondo@youtalk.jp>>

  • chore: include iostream and link yaml-cpp for Jazzy (#351)

  • Contributors: Mitsuhiro Sakamoto, Tim Clephas

1.10.0 (2026-09-28)

  • Merge remote-tracking branch 'origin/main' into tmp/bot/bump_version_base

  • fix(autoware_test_utils): fix the planning test manager links (#1425) docs(autoware_test_utils): point the planning test manager links at its new path The package moved from testing/ to planning/ in #1383, and these two links still point at the old path, so both return 404.

  • fix(testing): declare the dependencies these packages use (#1374) Each of these packages uses a package it never declares. Either it includes a header of that package, or it names a symbol of it while the header arrives through another dependency. Both build today only because some declared dependency re-exports the owner, so a change in an unrelated repository can break them without anything here changing. The tag follows where the dependency is used: a use in an installed header or in code compiled into the library takes <depend>, one reached only from test/ takes <test_depend>. System libraries are named by the rosdep key this workspace already prefers. Boost.Serialization is declared separately from libboost-dev because it needs its own library at link time.

  • fix(autoware_test_utils): guard the yaml-cpp target for humble (#1354) The link moved to yaml-cpp::yaml-cpp. Ubuntu 24.04 ships yaml-cpp 0.8, which exports that namespaced target, so jazzy passes. Ubuntu 22.04 ships 0.7, which exports the target without a namespace, so every humble build of this package stops at the CMake generate step: Target "autoware_test_utils" links to target "yaml-cpp::yaml-cpp" but the target was not found. Keep the namespaced target, and define it when the config does not give one. The guard is copied from autoware_map_loader, which already carries it. Use the same target for topic_snapshot_saver, so both link lines agree.

  • fix(autoware_test_utils): link to yaml-cpp target (#1272) Link autoware_test_utils to yaml-cpp target This upstreams RoboStack downstream patch [patch/ros-rolling-autoware-test-utils.patch]{.title-ref}. Best-guess rationale: using yaml-cpp::yaml-cpp makes the dependency explicit for CMake-based package managers, and suppressing deprecated declaration warnings outside MSVC keeps current dependency warnings from breaking strict builds. Co-authored-by: Daisuke Nishimatsu <<nishimarudai@gmail.com>> Co-authored-by: Junya Sasaki <<j2sasaki1990@gmail.com>>

  • fix: autoware_test_manager:Fix flaky No subscriber for <topic> failure (#1181)

    • fix:autoware_test_manager:Fix flaky No subscriber for <topic> failures in autoware_planning_test_manager CI tests (closes #1177)

    * style(pre-commit): autofix ---------Co-authored-by: pre-commit-ci[bot] <66853113+pre-commit-ci[bot]@users.noreply.github.com> Co-authored-by: Yutaka Kondo <<yutaka.kondo@youtalk.jp>>

File truncated at 100 lines see the full file

Launch files

No launch files found

Messages

No message files found.

Services

No service files found

Plugins

No plugins found.

Recent questions tagged autoware_test_utils at Robotics Stack Exchange

No version for distro rolling showing humble. Known supported distros are highlighted in the buttons above.
Package symbol

autoware_test_utils package from autoware_core repo

autoware_adapi_adaptors autoware_adapi_specs autoware_core_api autoware_default_adapi autoware_core autoware_agnocast_wrapper autoware_component_interface_admission autoware_component_interface_specs autoware_component_interface_utils autoware_geography_utils autoware_global_parameter_loader autoware_interface_spec_lint autoware_interpolation autoware_kalman_filter autoware_lanelet2_utils autoware_marker_utils autoware_motion_utils autoware_node autoware_object_recognition_utils autoware_osqp_interface autoware_point_types autoware_qos_utils autoware_qp_interface autoware_signal_processing autoware_trajectory autoware_vehicle_info_utils autoware_command_gate autoware_core_control autoware_simple_pure_pursuit autoware_awsim_sensor_kit_description autoware_sample_sensor_kit_description autoware_sample_vehicle_description autoware_core_localization autoware_ekf_localizer autoware_gyro_odometer autoware_localization_util autoware_ndt_scan_matcher autoware_pose_initializer autoware_stop_filter autoware_twist2accel autoware_core_map autoware_lanelet2_map_visualizer autoware_map_height_fitter autoware_map_loader autoware_map_projection_loader autoware_core_perception autoware_euclidean_cluster_object_detector autoware_ground_filter autoware_perception_objects_converter autoware_core_planning autoware_mission_planner autoware_objects_of_interest_marker_interface autoware_path_generator autoware_planning_factor_interface autoware_planning_test_manager autoware_planning_topic_converter autoware_route_handler autoware_velocity_smoother autoware_behavior_velocity_planner autoware_behavior_velocity_planner_common autoware_behavior_velocity_stop_line_module autoware_motion_velocity_obstacle_stop_module autoware_motion_velocity_planner autoware_motion_velocity_planner_common autoware_core_sensing autoware_crop_box_filter autoware_downsample_filters autoware_gnss_poser autoware_vehicle_velocity_converter autoware_pyplot autoware_test_node autoware_test_utils autoware_testing autoware_core_vehicle

ROS Distro
humble

Package Summary

Version 1.10.0
License Apache License 2.0
Build type AMENT_CMAKE
Use RECOMMENDED

Repository Summary

Description
Checkout URI https://github.com/autowarefoundation/autoware_core.git
VCS Type git
VCS Version main
Last Updated 2026-10-23
Dev Status DEVELOPED
Released RELEASED
Contributing Help Wanted (-)
Good First Issues (-)
Pull Requests to Review (-)

Package Description

ROS 2 node for testing interface of the nodes in planning module

Maintainers

  • Kyoichi Sugahara
  • Takamasa Horibe
  • Zulfaqar Azmi
  • Mamoru Sobue
  • Yukinari Hisaki
  • Jian Kang
  • Junya Sasaki

Authors

  • Kyoichi Sugahara

Test Utils

Background

Several Autoware’s components and modules have already adopted unit testing, so a common library to ease the process of writing unit tests is necessary.

Purpose

The objective of the test_utils is to develop a unit testing library for the Autoware components. This library will include

  • commonly used functions
  • input/mock data parser
  • maps for testing
  • common routes and mock data for testing.

Available Maps

The following maps are available here

Common

The common map contains multiple types of usable inputs, including shoulder lanes, intersections, and some regulatory elements. The common map is named lanelet2_map.osm in the folder.

common

2 km Straight

The 2 km straight lanelet map consists of two lanes that run in the same direction. The map is named 2km_test.osm.

two_km

The following illustrates the design of the map.

straight_diagram

road_shoulders

The road_shoulders lanelet map consist of a variety of pick-up/drop-off site maps with road_shoulder tags including:

  • pick-up/drop-off sites on the side of street lanes
  • pick-up/drop-off sites on the side of curved lanes
  • pick-up/drop-off sites inside a private area

road_shoulder_test

You can easily launch planning_simulator by

ros2 launch autoware_test_utils psim_road_shoulder.launch.xml vehicle_model:=<> sensor_model:=<> use_sim_time:=true

intersection

The intersections lanelet map consist of a variety of intersections including:

  • 4-way crossing with traffic light
  • 4-way crossing without traffic light
  • T-shape crossing without traffic light
  • intersection with a loop
  • complicated intersection

intersection_test

You can easily launch planning_simulator by

ros2 launch autoware_test_utils psim_intersection.launch.xml vehicle_model:=<> sensor_model:=<> use_sim_time:=true

overlap

The overlap lanelet map includes

  • U-turn with a gap
  • U-turn with full crossing
  • U-turn with half crossing
  • overpass

overlap_test

Example use cases

Autoware Planning Test Manager

The goal of the Autoware Planning Test Manager is to test planning module nodes. The PlanningInterfaceTestManager class (source code) creates wrapper functions based on the test_utils functions.

Generate test data for unit testing

As presented in this PR description, the user can save a snapshot of the scene to a yaml file while running Planning Simulation on the test map.

ros2 launch autoware_test_utils psim_road_shoulder.launch.xml
ros2 launch autoware_test_utils psim_intersection.launch.xml

It uses the autoware autoware_sample_vehicle_description and autoware_sample_sensor_kit by default, and autoware_test_utils/config/test_vehicle_info.param.yaml is exactly the same as that of autoware_sample_vehicle_description. If specified, vehicle_model/sensor_model argument is available.

ros2 service call /autoware_test_utils/topic_snapshot_saver std_srvs/srv/Empty \{\}

File truncated at 100 lines see the full file

CHANGELOG

Changelog for package autoware_test_utils

1.1.0 (2025-05-01)

  • test(path_generator): add tests for path cut feature (#268)

    • add map for test
    • add overpass map
    • refactor & enhance base test class
    • add tests
    • style(pre-commit): autofix

    * fix year created Co-authored-by: Kosuke Takeuchi <<kosuke.tnp@gmail.com>>

    • anonymize test map
    • style(pre-commit): autofix
    • add test map info to README
    • style(pre-commit): autofix
    • make tests work with autoware_trajectory
    • include necessary header
    • fix test case

    * style(pre-commit): autofix ---------Co-authored-by: pre-commit-ci[bot] <66853113+pre-commit-ci[bot]@users.noreply.github.com> Co-authored-by: Kosuke Takeuchi <<kosuke.tnp@gmail.com>> Co-authored-by: Yutaka Kondo <<yutaka.kondo@youtalk.jp>>

  • chore: include iostream and link yaml-cpp for Jazzy (#351)

  • Contributors: Mitsuhiro Sakamoto, Tim Clephas

1.10.0 (2026-09-28)

  • Merge remote-tracking branch 'origin/main' into tmp/bot/bump_version_base

  • fix(autoware_test_utils): fix the planning test manager links (#1425) docs(autoware_test_utils): point the planning test manager links at its new path The package moved from testing/ to planning/ in #1383, and these two links still point at the old path, so both return 404.

  • fix(testing): declare the dependencies these packages use (#1374) Each of these packages uses a package it never declares. Either it includes a header of that package, or it names a symbol of it while the header arrives through another dependency. Both build today only because some declared dependency re-exports the owner, so a change in an unrelated repository can break them without anything here changing. The tag follows where the dependency is used: a use in an installed header or in code compiled into the library takes <depend>, one reached only from test/ takes <test_depend>. System libraries are named by the rosdep key this workspace already prefers. Boost.Serialization is declared separately from libboost-dev because it needs its own library at link time.

  • fix(autoware_test_utils): guard the yaml-cpp target for humble (#1354) The link moved to yaml-cpp::yaml-cpp. Ubuntu 24.04 ships yaml-cpp 0.8, which exports that namespaced target, so jazzy passes. Ubuntu 22.04 ships 0.7, which exports the target without a namespace, so every humble build of this package stops at the CMake generate step: Target "autoware_test_utils" links to target "yaml-cpp::yaml-cpp" but the target was not found. Keep the namespaced target, and define it when the config does not give one. The guard is copied from autoware_map_loader, which already carries it. Use the same target for topic_snapshot_saver, so both link lines agree.

  • fix(autoware_test_utils): link to yaml-cpp target (#1272) Link autoware_test_utils to yaml-cpp target This upstreams RoboStack downstream patch [patch/ros-rolling-autoware-test-utils.patch]{.title-ref}. Best-guess rationale: using yaml-cpp::yaml-cpp makes the dependency explicit for CMake-based package managers, and suppressing deprecated declaration warnings outside MSVC keeps current dependency warnings from breaking strict builds. Co-authored-by: Daisuke Nishimatsu <<nishimarudai@gmail.com>> Co-authored-by: Junya Sasaki <<j2sasaki1990@gmail.com>>

  • fix: autoware_test_manager:Fix flaky No subscriber for <topic> failure (#1181)

    • fix:autoware_test_manager:Fix flaky No subscriber for <topic> failures in autoware_planning_test_manager CI tests (closes #1177)

    * style(pre-commit): autofix ---------Co-authored-by: pre-commit-ci[bot] <66853113+pre-commit-ci[bot]@users.noreply.github.com> Co-authored-by: Yutaka Kondo <<yutaka.kondo@youtalk.jp>>

File truncated at 100 lines see the full file

Launch files

No launch files found

Messages

No message files found.

Services

No service files found

Plugins

No plugins found.

Recent questions tagged autoware_test_utils at Robotics Stack Exchange

Package symbol

autoware_test_utils package from autoware_core repo

autoware_adapi_adaptors autoware_adapi_specs autoware_core_api autoware_default_adapi autoware_core autoware_agnocast_wrapper autoware_component_interface_admission autoware_component_interface_specs autoware_component_interface_utils autoware_geography_utils autoware_global_parameter_loader autoware_interface_spec_lint autoware_interpolation autoware_kalman_filter autoware_lanelet2_utils autoware_marker_utils autoware_motion_utils autoware_node autoware_object_recognition_utils autoware_osqp_interface autoware_point_types autoware_qos_utils autoware_qp_interface autoware_signal_processing autoware_trajectory autoware_vehicle_info_utils autoware_command_gate autoware_core_control autoware_simple_pure_pursuit autoware_awsim_sensor_kit_description autoware_sample_sensor_kit_description autoware_sample_vehicle_description autoware_core_localization autoware_ekf_localizer autoware_gyro_odometer autoware_localization_util autoware_ndt_scan_matcher autoware_pose_initializer autoware_stop_filter autoware_twist2accel autoware_core_map autoware_lanelet2_map_visualizer autoware_map_height_fitter autoware_map_loader autoware_map_projection_loader autoware_core_perception autoware_euclidean_cluster_object_detector autoware_ground_filter autoware_perception_objects_converter autoware_core_planning autoware_mission_planner autoware_objects_of_interest_marker_interface autoware_path_generator autoware_planning_factor_interface autoware_planning_test_manager autoware_planning_topic_converter autoware_route_handler autoware_velocity_smoother autoware_behavior_velocity_planner autoware_behavior_velocity_planner_common autoware_behavior_velocity_stop_line_module autoware_motion_velocity_obstacle_stop_module autoware_motion_velocity_planner autoware_motion_velocity_planner_common autoware_core_sensing autoware_crop_box_filter autoware_downsample_filters autoware_gnss_poser autoware_vehicle_velocity_converter autoware_pyplot autoware_test_node autoware_test_utils autoware_testing autoware_core_vehicle

ROS Distro
github

Package Summary

Version 1.10.0
License Apache License 2.0
Build type AMENT_CMAKE
Use RECOMMENDED

Repository Summary

Description
Checkout URI https://github.com/autowarefoundation/autoware_core.git
VCS Type git
VCS Version main
Last Updated 2026-10-23
Dev Status DEVELOPED
Released UNRELEASED
Contributing Help Wanted (-)
Good First Issues (-)
Pull Requests to Review (-)

Package Description

ROS 2 node for testing interface of the nodes in planning module

Maintainers

  • Kyoichi Sugahara
  • Takamasa Horibe
  • Zulfaqar Azmi
  • Mamoru Sobue
  • Yukinari Hisaki
  • Jian Kang
  • Junya Sasaki

Authors

  • Kyoichi Sugahara

Test Utils

Background

Several Autoware’s components and modules have already adopted unit testing, so a common library to ease the process of writing unit tests is necessary.

Purpose

The objective of the test_utils is to develop a unit testing library for the Autoware components. This library will include

  • commonly used functions
  • input/mock data parser
  • maps for testing
  • common routes and mock data for testing.

Available Maps

The following maps are available here

Common

The common map contains multiple types of usable inputs, including shoulder lanes, intersections, and some regulatory elements. The common map is named lanelet2_map.osm in the folder.

common

2 km Straight

The 2 km straight lanelet map consists of two lanes that run in the same direction. The map is named 2km_test.osm.

two_km

The following illustrates the design of the map.

straight_diagram

road_shoulders

The road_shoulders lanelet map consist of a variety of pick-up/drop-off site maps with road_shoulder tags including:

  • pick-up/drop-off sites on the side of street lanes
  • pick-up/drop-off sites on the side of curved lanes
  • pick-up/drop-off sites inside a private area

road_shoulder_test

You can easily launch planning_simulator by

ros2 launch autoware_test_utils psim_road_shoulder.launch.xml vehicle_model:=<> sensor_model:=<> use_sim_time:=true

intersection

The intersections lanelet map consist of a variety of intersections including:

  • 4-way crossing with traffic light
  • 4-way crossing without traffic light
  • T-shape crossing without traffic light
  • intersection with a loop
  • complicated intersection

intersection_test

You can easily launch planning_simulator by

ros2 launch autoware_test_utils psim_intersection.launch.xml vehicle_model:=<> sensor_model:=<> use_sim_time:=true

overlap

The overlap lanelet map includes

  • U-turn with a gap
  • U-turn with full crossing
  • U-turn with half crossing
  • overpass

overlap_test

Example use cases

Autoware Planning Test Manager

The goal of the Autoware Planning Test Manager is to test planning module nodes. The PlanningInterfaceTestManager class (source code) creates wrapper functions based on the test_utils functions.

Generate test data for unit testing

As presented in this PR description, the user can save a snapshot of the scene to a yaml file while running Planning Simulation on the test map.

ros2 launch autoware_test_utils psim_road_shoulder.launch.xml
ros2 launch autoware_test_utils psim_intersection.launch.xml

It uses the autoware autoware_sample_vehicle_description and autoware_sample_sensor_kit by default, and autoware_test_utils/config/test_vehicle_info.param.yaml is exactly the same as that of autoware_sample_vehicle_description. If specified, vehicle_model/sensor_model argument is available.

ros2 service call /autoware_test_utils/topic_snapshot_saver std_srvs/srv/Empty \{\}

File truncated at 100 lines see the full file

CHANGELOG

Changelog for package autoware_test_utils

1.1.0 (2025-05-01)

  • test(path_generator): add tests for path cut feature (#268)

    • add map for test
    • add overpass map
    • refactor & enhance base test class
    • add tests
    • style(pre-commit): autofix

    * fix year created Co-authored-by: Kosuke Takeuchi <<kosuke.tnp@gmail.com>>

    • anonymize test map
    • style(pre-commit): autofix
    • add test map info to README
    • style(pre-commit): autofix
    • make tests work with autoware_trajectory
    • include necessary header
    • fix test case

    * style(pre-commit): autofix ---------Co-authored-by: pre-commit-ci[bot] <66853113+pre-commit-ci[bot]@users.noreply.github.com> Co-authored-by: Kosuke Takeuchi <<kosuke.tnp@gmail.com>> Co-authored-by: Yutaka Kondo <<yutaka.kondo@youtalk.jp>>

  • chore: include iostream and link yaml-cpp for Jazzy (#351)

  • Contributors: Mitsuhiro Sakamoto, Tim Clephas

1.10.0 (2026-09-28)

  • Merge remote-tracking branch 'origin/main' into tmp/bot/bump_version_base

  • fix(autoware_test_utils): fix the planning test manager links (#1425) docs(autoware_test_utils): point the planning test manager links at its new path The package moved from testing/ to planning/ in #1383, and these two links still point at the old path, so both return 404.

  • fix(testing): declare the dependencies these packages use (#1374) Each of these packages uses a package it never declares. Either it includes a header of that package, or it names a symbol of it while the header arrives through another dependency. Both build today only because some declared dependency re-exports the owner, so a change in an unrelated repository can break them without anything here changing. The tag follows where the dependency is used: a use in an installed header or in code compiled into the library takes <depend>, one reached only from test/ takes <test_depend>. System libraries are named by the rosdep key this workspace already prefers. Boost.Serialization is declared separately from libboost-dev because it needs its own library at link time.

  • fix(autoware_test_utils): guard the yaml-cpp target for humble (#1354) The link moved to yaml-cpp::yaml-cpp. Ubuntu 24.04 ships yaml-cpp 0.8, which exports that namespaced target, so jazzy passes. Ubuntu 22.04 ships 0.7, which exports the target without a namespace, so every humble build of this package stops at the CMake generate step: Target "autoware_test_utils" links to target "yaml-cpp::yaml-cpp" but the target was not found. Keep the namespaced target, and define it when the config does not give one. The guard is copied from autoware_map_loader, which already carries it. Use the same target for topic_snapshot_saver, so both link lines agree.

  • fix(autoware_test_utils): link to yaml-cpp target (#1272) Link autoware_test_utils to yaml-cpp target This upstreams RoboStack downstream patch [patch/ros-rolling-autoware-test-utils.patch]{.title-ref}. Best-guess rationale: using yaml-cpp::yaml-cpp makes the dependency explicit for CMake-based package managers, and suppressing deprecated declaration warnings outside MSVC keeps current dependency warnings from breaking strict builds. Co-authored-by: Daisuke Nishimatsu <<nishimarudai@gmail.com>> Co-authored-by: Junya Sasaki <<j2sasaki1990@gmail.com>>

  • fix: autoware_test_manager:Fix flaky No subscriber for <topic> failure (#1181)

    • fix:autoware_test_manager:Fix flaky No subscriber for <topic> failures in autoware_planning_test_manager CI tests (closes #1177)

    * style(pre-commit): autofix ---------Co-authored-by: pre-commit-ci[bot] <66853113+pre-commit-ci[bot]@users.noreply.github.com> Co-authored-by: Yutaka Kondo <<yutaka.kondo@youtalk.jp>>

File truncated at 100 lines see the full file

Dependant Packages

Name Deps
autoware_lanelet2_utils
autoware_trajectory
autoware_simple_pure_pursuit
autoware_ground_filter
autoware_mission_planner
autoware_path_generator
autoware_planning_test_manager
autoware_route_handler
autoware_velocity_smoother
autoware_behavior_velocity_planner
autoware_behavior_velocity_planner_common
autoware_motion_velocity_obstacle_stop_module
autoware_motion_velocity_planner
autoware_planning_data_analyzer
autoware_deprecated_boundary_departure_checker
autoware_autonomous_emergency_braking
autoware_control_validator
autoware_lane_departure_checker
autoware_control_evaluator
autoware_planning_evaluator
autoware_cluster_merger
autoware_compare_map_segmentation
autoware_detected_object_validation
autoware_object_merger
autoware_object_sorter
autoware_shape_estimation
autoware_simple_object_merger
autoware_traffic_light_category_merger
autoware_costmap_generator
autoware_diffusion_planner
autoware_mission_planner_universe
autoware_remaining_distance_time_calculator
autoware_rtc_interface
autoware_surround_obstacle_checker
autoware_trajectory_modifier
autoware_trajectory_ranker
autoware_trajectory_selector
autoware_behavior_path_bidirectional_traffic_module
autoware_behavior_path_goal_planner_module
autoware_behavior_path_planner_common
autoware_behavior_path_start_planner_module
autoware_behavior_path_static_obstacle_avoidance_module
autoware_behavior_velocity_blind_spot_module
autoware_behavior_velocity_intersection_module
autoware_behavior_velocity_roundabout_module
autoware_behavior_velocity_traffic_light_module
autoware_external_cmd_converter

Launch files

No launch files found

Messages

No message files found.

Services

No service files found

Plugins

No plugins found.

Recent questions tagged autoware_test_utils at Robotics Stack Exchange

No version for distro galactic showing humble. Known supported distros are highlighted in the buttons above.
Package symbol

autoware_test_utils package from autoware_core repo

autoware_adapi_adaptors autoware_adapi_specs autoware_core_api autoware_default_adapi autoware_core autoware_agnocast_wrapper autoware_component_interface_admission autoware_component_interface_specs autoware_component_interface_utils autoware_geography_utils autoware_global_parameter_loader autoware_interface_spec_lint autoware_interpolation autoware_kalman_filter autoware_lanelet2_utils autoware_marker_utils autoware_motion_utils autoware_node autoware_object_recognition_utils autoware_osqp_interface autoware_point_types autoware_qos_utils autoware_qp_interface autoware_signal_processing autoware_trajectory autoware_vehicle_info_utils autoware_command_gate autoware_core_control autoware_simple_pure_pursuit autoware_awsim_sensor_kit_description autoware_sample_sensor_kit_description autoware_sample_vehicle_description autoware_core_localization autoware_ekf_localizer autoware_gyro_odometer autoware_localization_util autoware_ndt_scan_matcher autoware_pose_initializer autoware_stop_filter autoware_twist2accel autoware_core_map autoware_lanelet2_map_visualizer autoware_map_height_fitter autoware_map_loader autoware_map_projection_loader autoware_core_perception autoware_euclidean_cluster_object_detector autoware_ground_filter autoware_perception_objects_converter autoware_core_planning autoware_mission_planner autoware_objects_of_interest_marker_interface autoware_path_generator autoware_planning_factor_interface autoware_planning_test_manager autoware_planning_topic_converter autoware_route_handler autoware_velocity_smoother autoware_behavior_velocity_planner autoware_behavior_velocity_planner_common autoware_behavior_velocity_stop_line_module autoware_motion_velocity_obstacle_stop_module autoware_motion_velocity_planner autoware_motion_velocity_planner_common autoware_core_sensing autoware_crop_box_filter autoware_downsample_filters autoware_gnss_poser autoware_vehicle_velocity_converter autoware_pyplot autoware_test_node autoware_test_utils autoware_testing autoware_core_vehicle

ROS Distro
humble

Package Summary

Version 1.10.0
License Apache License 2.0
Build type AMENT_CMAKE
Use RECOMMENDED

Repository Summary

Description
Checkout URI https://github.com/autowarefoundation/autoware_core.git
VCS Type git
VCS Version main
Last Updated 2026-10-23
Dev Status DEVELOPED
Released RELEASED
Contributing Help Wanted (-)
Good First Issues (-)
Pull Requests to Review (-)

Package Description

ROS 2 node for testing interface of the nodes in planning module

Maintainers

  • Kyoichi Sugahara
  • Takamasa Horibe
  • Zulfaqar Azmi
  • Mamoru Sobue
  • Yukinari Hisaki
  • Jian Kang
  • Junya Sasaki

Authors

  • Kyoichi Sugahara

Test Utils

Background

Several Autoware’s components and modules have already adopted unit testing, so a common library to ease the process of writing unit tests is necessary.

Purpose

The objective of the test_utils is to develop a unit testing library for the Autoware components. This library will include

  • commonly used functions
  • input/mock data parser
  • maps for testing
  • common routes and mock data for testing.

Available Maps

The following maps are available here

Common

The common map contains multiple types of usable inputs, including shoulder lanes, intersections, and some regulatory elements. The common map is named lanelet2_map.osm in the folder.

common

2 km Straight

The 2 km straight lanelet map consists of two lanes that run in the same direction. The map is named 2km_test.osm.

two_km

The following illustrates the design of the map.

straight_diagram

road_shoulders

The road_shoulders lanelet map consist of a variety of pick-up/drop-off site maps with road_shoulder tags including:

  • pick-up/drop-off sites on the side of street lanes
  • pick-up/drop-off sites on the side of curved lanes
  • pick-up/drop-off sites inside a private area

road_shoulder_test

You can easily launch planning_simulator by

ros2 launch autoware_test_utils psim_road_shoulder.launch.xml vehicle_model:=<> sensor_model:=<> use_sim_time:=true

intersection

The intersections lanelet map consist of a variety of intersections including:

  • 4-way crossing with traffic light
  • 4-way crossing without traffic light
  • T-shape crossing without traffic light
  • intersection with a loop
  • complicated intersection

intersection_test

You can easily launch planning_simulator by

ros2 launch autoware_test_utils psim_intersection.launch.xml vehicle_model:=<> sensor_model:=<> use_sim_time:=true

overlap

The overlap lanelet map includes

  • U-turn with a gap
  • U-turn with full crossing
  • U-turn with half crossing
  • overpass

overlap_test

Example use cases

Autoware Planning Test Manager

The goal of the Autoware Planning Test Manager is to test planning module nodes. The PlanningInterfaceTestManager class (source code) creates wrapper functions based on the test_utils functions.

Generate test data for unit testing

As presented in this PR description, the user can save a snapshot of the scene to a yaml file while running Planning Simulation on the test map.

ros2 launch autoware_test_utils psim_road_shoulder.launch.xml
ros2 launch autoware_test_utils psim_intersection.launch.xml

It uses the autoware autoware_sample_vehicle_description and autoware_sample_sensor_kit by default, and autoware_test_utils/config/test_vehicle_info.param.yaml is exactly the same as that of autoware_sample_vehicle_description. If specified, vehicle_model/sensor_model argument is available.

ros2 service call /autoware_test_utils/topic_snapshot_saver std_srvs/srv/Empty \{\}

File truncated at 100 lines see the full file

CHANGELOG

Changelog for package autoware_test_utils

1.1.0 (2025-05-01)

  • test(path_generator): add tests for path cut feature (#268)

    • add map for test
    • add overpass map
    • refactor & enhance base test class
    • add tests
    • style(pre-commit): autofix

    * fix year created Co-authored-by: Kosuke Takeuchi <<kosuke.tnp@gmail.com>>

    • anonymize test map
    • style(pre-commit): autofix
    • add test map info to README
    • style(pre-commit): autofix
    • make tests work with autoware_trajectory
    • include necessary header
    • fix test case

    * style(pre-commit): autofix ---------Co-authored-by: pre-commit-ci[bot] <66853113+pre-commit-ci[bot]@users.noreply.github.com> Co-authored-by: Kosuke Takeuchi <<kosuke.tnp@gmail.com>> Co-authored-by: Yutaka Kondo <<yutaka.kondo@youtalk.jp>>

  • chore: include iostream and link yaml-cpp for Jazzy (#351)

  • Contributors: Mitsuhiro Sakamoto, Tim Clephas

1.10.0 (2026-09-28)

  • Merge remote-tracking branch 'origin/main' into tmp/bot/bump_version_base

  • fix(autoware_test_utils): fix the planning test manager links (#1425) docs(autoware_test_utils): point the planning test manager links at its new path The package moved from testing/ to planning/ in #1383, and these two links still point at the old path, so both return 404.

  • fix(testing): declare the dependencies these packages use (#1374) Each of these packages uses a package it never declares. Either it includes a header of that package, or it names a symbol of it while the header arrives through another dependency. Both build today only because some declared dependency re-exports the owner, so a change in an unrelated repository can break them without anything here changing. The tag follows where the dependency is used: a use in an installed header or in code compiled into the library takes <depend>, one reached only from test/ takes <test_depend>. System libraries are named by the rosdep key this workspace already prefers. Boost.Serialization is declared separately from libboost-dev because it needs its own library at link time.

  • fix(autoware_test_utils): guard the yaml-cpp target for humble (#1354) The link moved to yaml-cpp::yaml-cpp. Ubuntu 24.04 ships yaml-cpp 0.8, which exports that namespaced target, so jazzy passes. Ubuntu 22.04 ships 0.7, which exports the target without a namespace, so every humble build of this package stops at the CMake generate step: Target "autoware_test_utils" links to target "yaml-cpp::yaml-cpp" but the target was not found. Keep the namespaced target, and define it when the config does not give one. The guard is copied from autoware_map_loader, which already carries it. Use the same target for topic_snapshot_saver, so both link lines agree.

  • fix(autoware_test_utils): link to yaml-cpp target (#1272) Link autoware_test_utils to yaml-cpp target This upstreams RoboStack downstream patch [patch/ros-rolling-autoware-test-utils.patch]{.title-ref}. Best-guess rationale: using yaml-cpp::yaml-cpp makes the dependency explicit for CMake-based package managers, and suppressing deprecated declaration warnings outside MSVC keeps current dependency warnings from breaking strict builds. Co-authored-by: Daisuke Nishimatsu <<nishimarudai@gmail.com>> Co-authored-by: Junya Sasaki <<j2sasaki1990@gmail.com>>

  • fix: autoware_test_manager:Fix flaky No subscriber for <topic> failure (#1181)

    • fix:autoware_test_manager:Fix flaky No subscriber for <topic> failures in autoware_planning_test_manager CI tests (closes #1177)

    * style(pre-commit): autofix ---------Co-authored-by: pre-commit-ci[bot] <66853113+pre-commit-ci[bot]@users.noreply.github.com> Co-authored-by: Yutaka Kondo <<yutaka.kondo@youtalk.jp>>

File truncated at 100 lines see the full file

Launch files

No launch files found

Messages

No message files found.

Services

No service files found

Plugins

No plugins found.

Recent questions tagged autoware_test_utils at Robotics Stack Exchange

No version for distro iron showing humble. Known supported distros are highlighted in the buttons above.
Package symbol

autoware_test_utils package from autoware_core repo

autoware_adapi_adaptors autoware_adapi_specs autoware_core_api autoware_default_adapi autoware_core autoware_agnocast_wrapper autoware_component_interface_admission autoware_component_interface_specs autoware_component_interface_utils autoware_geography_utils autoware_global_parameter_loader autoware_interface_spec_lint autoware_interpolation autoware_kalman_filter autoware_lanelet2_utils autoware_marker_utils autoware_motion_utils autoware_node autoware_object_recognition_utils autoware_osqp_interface autoware_point_types autoware_qos_utils autoware_qp_interface autoware_signal_processing autoware_trajectory autoware_vehicle_info_utils autoware_command_gate autoware_core_control autoware_simple_pure_pursuit autoware_awsim_sensor_kit_description autoware_sample_sensor_kit_description autoware_sample_vehicle_description autoware_core_localization autoware_ekf_localizer autoware_gyro_odometer autoware_localization_util autoware_ndt_scan_matcher autoware_pose_initializer autoware_stop_filter autoware_twist2accel autoware_core_map autoware_lanelet2_map_visualizer autoware_map_height_fitter autoware_map_loader autoware_map_projection_loader autoware_core_perception autoware_euclidean_cluster_object_detector autoware_ground_filter autoware_perception_objects_converter autoware_core_planning autoware_mission_planner autoware_objects_of_interest_marker_interface autoware_path_generator autoware_planning_factor_interface autoware_planning_test_manager autoware_planning_topic_converter autoware_route_handler autoware_velocity_smoother autoware_behavior_velocity_planner autoware_behavior_velocity_planner_common autoware_behavior_velocity_stop_line_module autoware_motion_velocity_obstacle_stop_module autoware_motion_velocity_planner autoware_motion_velocity_planner_common autoware_core_sensing autoware_crop_box_filter autoware_downsample_filters autoware_gnss_poser autoware_vehicle_velocity_converter autoware_pyplot autoware_test_node autoware_test_utils autoware_testing autoware_core_vehicle

ROS Distro
humble

Package Summary

Version 1.10.0
License Apache License 2.0
Build type AMENT_CMAKE
Use RECOMMENDED

Repository Summary

Description
Checkout URI https://github.com/autowarefoundation/autoware_core.git
VCS Type git
VCS Version main
Last Updated 2026-10-23
Dev Status DEVELOPED
Released RELEASED
Contributing Help Wanted (-)
Good First Issues (-)
Pull Requests to Review (-)

Package Description

ROS 2 node for testing interface of the nodes in planning module

Maintainers

  • Kyoichi Sugahara
  • Takamasa Horibe
  • Zulfaqar Azmi
  • Mamoru Sobue
  • Yukinari Hisaki
  • Jian Kang
  • Junya Sasaki

Authors

  • Kyoichi Sugahara

Test Utils

Background

Several Autoware’s components and modules have already adopted unit testing, so a common library to ease the process of writing unit tests is necessary.

Purpose

The objective of the test_utils is to develop a unit testing library for the Autoware components. This library will include

  • commonly used functions
  • input/mock data parser
  • maps for testing
  • common routes and mock data for testing.

Available Maps

The following maps are available here

Common

The common map contains multiple types of usable inputs, including shoulder lanes, intersections, and some regulatory elements. The common map is named lanelet2_map.osm in the folder.

common

2 km Straight

The 2 km straight lanelet map consists of two lanes that run in the same direction. The map is named 2km_test.osm.

two_km

The following illustrates the design of the map.

straight_diagram

road_shoulders

The road_shoulders lanelet map consist of a variety of pick-up/drop-off site maps with road_shoulder tags including:

  • pick-up/drop-off sites on the side of street lanes
  • pick-up/drop-off sites on the side of curved lanes
  • pick-up/drop-off sites inside a private area

road_shoulder_test

You can easily launch planning_simulator by

ros2 launch autoware_test_utils psim_road_shoulder.launch.xml vehicle_model:=<> sensor_model:=<> use_sim_time:=true

intersection

The intersections lanelet map consist of a variety of intersections including:

  • 4-way crossing with traffic light
  • 4-way crossing without traffic light
  • T-shape crossing without traffic light
  • intersection with a loop
  • complicated intersection

intersection_test

You can easily launch planning_simulator by

ros2 launch autoware_test_utils psim_intersection.launch.xml vehicle_model:=<> sensor_model:=<> use_sim_time:=true

overlap

The overlap lanelet map includes

  • U-turn with a gap
  • U-turn with full crossing
  • U-turn with half crossing
  • overpass

overlap_test

Example use cases

Autoware Planning Test Manager

The goal of the Autoware Planning Test Manager is to test planning module nodes. The PlanningInterfaceTestManager class (source code) creates wrapper functions based on the test_utils functions.

Generate test data for unit testing

As presented in this PR description, the user can save a snapshot of the scene to a yaml file while running Planning Simulation on the test map.

ros2 launch autoware_test_utils psim_road_shoulder.launch.xml
ros2 launch autoware_test_utils psim_intersection.launch.xml

It uses the autoware autoware_sample_vehicle_description and autoware_sample_sensor_kit by default, and autoware_test_utils/config/test_vehicle_info.param.yaml is exactly the same as that of autoware_sample_vehicle_description. If specified, vehicle_model/sensor_model argument is available.

ros2 service call /autoware_test_utils/topic_snapshot_saver std_srvs/srv/Empty \{\}

File truncated at 100 lines see the full file

CHANGELOG

Changelog for package autoware_test_utils

1.1.0 (2025-05-01)

  • test(path_generator): add tests for path cut feature (#268)

    • add map for test
    • add overpass map
    • refactor & enhance base test class
    • add tests
    • style(pre-commit): autofix

    * fix year created Co-authored-by: Kosuke Takeuchi <<kosuke.tnp@gmail.com>>

    • anonymize test map
    • style(pre-commit): autofix
    • add test map info to README
    • style(pre-commit): autofix
    • make tests work with autoware_trajectory
    • include necessary header
    • fix test case

    * style(pre-commit): autofix ---------Co-authored-by: pre-commit-ci[bot] <66853113+pre-commit-ci[bot]@users.noreply.github.com> Co-authored-by: Kosuke Takeuchi <<kosuke.tnp@gmail.com>> Co-authored-by: Yutaka Kondo <<yutaka.kondo@youtalk.jp>>

  • chore: include iostream and link yaml-cpp for Jazzy (#351)

  • Contributors: Mitsuhiro Sakamoto, Tim Clephas

1.10.0 (2026-09-28)

  • Merge remote-tracking branch 'origin/main' into tmp/bot/bump_version_base

  • fix(autoware_test_utils): fix the planning test manager links (#1425) docs(autoware_test_utils): point the planning test manager links at its new path The package moved from testing/ to planning/ in #1383, and these two links still point at the old path, so both return 404.

  • fix(testing): declare the dependencies these packages use (#1374) Each of these packages uses a package it never declares. Either it includes a header of that package, or it names a symbol of it while the header arrives through another dependency. Both build today only because some declared dependency re-exports the owner, so a change in an unrelated repository can break them without anything here changing. The tag follows where the dependency is used: a use in an installed header or in code compiled into the library takes <depend>, one reached only from test/ takes <test_depend>. System libraries are named by the rosdep key this workspace already prefers. Boost.Serialization is declared separately from libboost-dev because it needs its own library at link time.

  • fix(autoware_test_utils): guard the yaml-cpp target for humble (#1354) The link moved to yaml-cpp::yaml-cpp. Ubuntu 24.04 ships yaml-cpp 0.8, which exports that namespaced target, so jazzy passes. Ubuntu 22.04 ships 0.7, which exports the target without a namespace, so every humble build of this package stops at the CMake generate step: Target "autoware_test_utils" links to target "yaml-cpp::yaml-cpp" but the target was not found. Keep the namespaced target, and define it when the config does not give one. The guard is copied from autoware_map_loader, which already carries it. Use the same target for topic_snapshot_saver, so both link lines agree.

  • fix(autoware_test_utils): link to yaml-cpp target (#1272) Link autoware_test_utils to yaml-cpp target This upstreams RoboStack downstream patch [patch/ros-rolling-autoware-test-utils.patch]{.title-ref}. Best-guess rationale: using yaml-cpp::yaml-cpp makes the dependency explicit for CMake-based package managers, and suppressing deprecated declaration warnings outside MSVC keeps current dependency warnings from breaking strict builds. Co-authored-by: Daisuke Nishimatsu <<nishimarudai@gmail.com>> Co-authored-by: Junya Sasaki <<j2sasaki1990@gmail.com>>

  • fix: autoware_test_manager:Fix flaky No subscriber for <topic> failure (#1181)

    • fix:autoware_test_manager:Fix flaky No subscriber for <topic> failures in autoware_planning_test_manager CI tests (closes #1177)

    * style(pre-commit): autofix ---------Co-authored-by: pre-commit-ci[bot] <66853113+pre-commit-ci[bot]@users.noreply.github.com> Co-authored-by: Yutaka Kondo <<yutaka.kondo@youtalk.jp>>

File truncated at 100 lines see the full file

Launch files

No launch files found

Messages

No message files found.

Services

No service files found

Plugins

No plugins found.

Recent questions tagged autoware_test_utils at Robotics Stack Exchange

No version for distro melodic showing humble. Known supported distros are highlighted in the buttons above.
Package symbol

autoware_test_utils package from autoware_core repo

autoware_adapi_adaptors autoware_adapi_specs autoware_core_api autoware_default_adapi autoware_core autoware_agnocast_wrapper autoware_component_interface_admission autoware_component_interface_specs autoware_component_interface_utils autoware_geography_utils autoware_global_parameter_loader autoware_interface_spec_lint autoware_interpolation autoware_kalman_filter autoware_lanelet2_utils autoware_marker_utils autoware_motion_utils autoware_node autoware_object_recognition_utils autoware_osqp_interface autoware_point_types autoware_qos_utils autoware_qp_interface autoware_signal_processing autoware_trajectory autoware_vehicle_info_utils autoware_command_gate autoware_core_control autoware_simple_pure_pursuit autoware_awsim_sensor_kit_description autoware_sample_sensor_kit_description autoware_sample_vehicle_description autoware_core_localization autoware_ekf_localizer autoware_gyro_odometer autoware_localization_util autoware_ndt_scan_matcher autoware_pose_initializer autoware_stop_filter autoware_twist2accel autoware_core_map autoware_lanelet2_map_visualizer autoware_map_height_fitter autoware_map_loader autoware_map_projection_loader autoware_core_perception autoware_euclidean_cluster_object_detector autoware_ground_filter autoware_perception_objects_converter autoware_core_planning autoware_mission_planner autoware_objects_of_interest_marker_interface autoware_path_generator autoware_planning_factor_interface autoware_planning_test_manager autoware_planning_topic_converter autoware_route_handler autoware_velocity_smoother autoware_behavior_velocity_planner autoware_behavior_velocity_planner_common autoware_behavior_velocity_stop_line_module autoware_motion_velocity_obstacle_stop_module autoware_motion_velocity_planner autoware_motion_velocity_planner_common autoware_core_sensing autoware_crop_box_filter autoware_downsample_filters autoware_gnss_poser autoware_vehicle_velocity_converter autoware_pyplot autoware_test_node autoware_test_utils autoware_testing autoware_core_vehicle

ROS Distro
humble

Package Summary

Version 1.10.0
License Apache License 2.0
Build type AMENT_CMAKE
Use RECOMMENDED

Repository Summary

Description
Checkout URI https://github.com/autowarefoundation/autoware_core.git
VCS Type git
VCS Version main
Last Updated 2026-10-23
Dev Status DEVELOPED
Released RELEASED
Contributing Help Wanted (-)
Good First Issues (-)
Pull Requests to Review (-)

Package Description

ROS 2 node for testing interface of the nodes in planning module

Maintainers

  • Kyoichi Sugahara
  • Takamasa Horibe
  • Zulfaqar Azmi
  • Mamoru Sobue
  • Yukinari Hisaki
  • Jian Kang
  • Junya Sasaki

Authors

  • Kyoichi Sugahara

Test Utils

Background

Several Autoware’s components and modules have already adopted unit testing, so a common library to ease the process of writing unit tests is necessary.

Purpose

The objective of the test_utils is to develop a unit testing library for the Autoware components. This library will include

  • commonly used functions
  • input/mock data parser
  • maps for testing
  • common routes and mock data for testing.

Available Maps

The following maps are available here

Common

The common map contains multiple types of usable inputs, including shoulder lanes, intersections, and some regulatory elements. The common map is named lanelet2_map.osm in the folder.

common

2 km Straight

The 2 km straight lanelet map consists of two lanes that run in the same direction. The map is named 2km_test.osm.

two_km

The following illustrates the design of the map.

straight_diagram

road_shoulders

The road_shoulders lanelet map consist of a variety of pick-up/drop-off site maps with road_shoulder tags including:

  • pick-up/drop-off sites on the side of street lanes
  • pick-up/drop-off sites on the side of curved lanes
  • pick-up/drop-off sites inside a private area

road_shoulder_test

You can easily launch planning_simulator by

ros2 launch autoware_test_utils psim_road_shoulder.launch.xml vehicle_model:=<> sensor_model:=<> use_sim_time:=true

intersection

The intersections lanelet map consist of a variety of intersections including:

  • 4-way crossing with traffic light
  • 4-way crossing without traffic light
  • T-shape crossing without traffic light
  • intersection with a loop
  • complicated intersection

intersection_test

You can easily launch planning_simulator by

ros2 launch autoware_test_utils psim_intersection.launch.xml vehicle_model:=<> sensor_model:=<> use_sim_time:=true

overlap

The overlap lanelet map includes

  • U-turn with a gap
  • U-turn with full crossing
  • U-turn with half crossing
  • overpass

overlap_test

Example use cases

Autoware Planning Test Manager

The goal of the Autoware Planning Test Manager is to test planning module nodes. The PlanningInterfaceTestManager class (source code) creates wrapper functions based on the test_utils functions.

Generate test data for unit testing

As presented in this PR description, the user can save a snapshot of the scene to a yaml file while running Planning Simulation on the test map.

ros2 launch autoware_test_utils psim_road_shoulder.launch.xml
ros2 launch autoware_test_utils psim_intersection.launch.xml

It uses the autoware autoware_sample_vehicle_description and autoware_sample_sensor_kit by default, and autoware_test_utils/config/test_vehicle_info.param.yaml is exactly the same as that of autoware_sample_vehicle_description. If specified, vehicle_model/sensor_model argument is available.

ros2 service call /autoware_test_utils/topic_snapshot_saver std_srvs/srv/Empty \{\}

File truncated at 100 lines see the full file

CHANGELOG

Changelog for package autoware_test_utils

1.1.0 (2025-05-01)

  • test(path_generator): add tests for path cut feature (#268)

    • add map for test
    • add overpass map
    • refactor & enhance base test class
    • add tests
    • style(pre-commit): autofix

    * fix year created Co-authored-by: Kosuke Takeuchi <<kosuke.tnp@gmail.com>>

    • anonymize test map
    • style(pre-commit): autofix
    • add test map info to README
    • style(pre-commit): autofix
    • make tests work with autoware_trajectory
    • include necessary header
    • fix test case

    * style(pre-commit): autofix ---------Co-authored-by: pre-commit-ci[bot] <66853113+pre-commit-ci[bot]@users.noreply.github.com> Co-authored-by: Kosuke Takeuchi <<kosuke.tnp@gmail.com>> Co-authored-by: Yutaka Kondo <<yutaka.kondo@youtalk.jp>>

  • chore: include iostream and link yaml-cpp for Jazzy (#351)

  • Contributors: Mitsuhiro Sakamoto, Tim Clephas

1.10.0 (2026-09-28)

  • Merge remote-tracking branch 'origin/main' into tmp/bot/bump_version_base

  • fix(autoware_test_utils): fix the planning test manager links (#1425) docs(autoware_test_utils): point the planning test manager links at its new path The package moved from testing/ to planning/ in #1383, and these two links still point at the old path, so both return 404.

  • fix(testing): declare the dependencies these packages use (#1374) Each of these packages uses a package it never declares. Either it includes a header of that package, or it names a symbol of it while the header arrives through another dependency. Both build today only because some declared dependency re-exports the owner, so a change in an unrelated repository can break them without anything here changing. The tag follows where the dependency is used: a use in an installed header or in code compiled into the library takes <depend>, one reached only from test/ takes <test_depend>. System libraries are named by the rosdep key this workspace already prefers. Boost.Serialization is declared separately from libboost-dev because it needs its own library at link time.

  • fix(autoware_test_utils): guard the yaml-cpp target for humble (#1354) The link moved to yaml-cpp::yaml-cpp. Ubuntu 24.04 ships yaml-cpp 0.8, which exports that namespaced target, so jazzy passes. Ubuntu 22.04 ships 0.7, which exports the target without a namespace, so every humble build of this package stops at the CMake generate step: Target "autoware_test_utils" links to target "yaml-cpp::yaml-cpp" but the target was not found. Keep the namespaced target, and define it when the config does not give one. The guard is copied from autoware_map_loader, which already carries it. Use the same target for topic_snapshot_saver, so both link lines agree.

  • fix(autoware_test_utils): link to yaml-cpp target (#1272) Link autoware_test_utils to yaml-cpp target This upstreams RoboStack downstream patch [patch/ros-rolling-autoware-test-utils.patch]{.title-ref}. Best-guess rationale: using yaml-cpp::yaml-cpp makes the dependency explicit for CMake-based package managers, and suppressing deprecated declaration warnings outside MSVC keeps current dependency warnings from breaking strict builds. Co-authored-by: Daisuke Nishimatsu <<nishimarudai@gmail.com>> Co-authored-by: Junya Sasaki <<j2sasaki1990@gmail.com>>

  • fix: autoware_test_manager:Fix flaky No subscriber for <topic> failure (#1181)

    • fix:autoware_test_manager:Fix flaky No subscriber for <topic> failures in autoware_planning_test_manager CI tests (closes #1177)

    * style(pre-commit): autofix ---------Co-authored-by: pre-commit-ci[bot] <66853113+pre-commit-ci[bot]@users.noreply.github.com> Co-authored-by: Yutaka Kondo <<yutaka.kondo@youtalk.jp>>

File truncated at 100 lines see the full file

Launch files

No launch files found

Messages

No message files found.

Services

No service files found

Plugins

No plugins found.

Recent questions tagged autoware_test_utils at Robotics Stack Exchange

No version for distro noetic showing humble. Known supported distros are highlighted in the buttons above.
Package symbol

autoware_test_utils package from autoware_core repo

autoware_adapi_adaptors autoware_adapi_specs autoware_core_api autoware_default_adapi autoware_core autoware_agnocast_wrapper autoware_component_interface_admission autoware_component_interface_specs autoware_component_interface_utils autoware_geography_utils autoware_global_parameter_loader autoware_interface_spec_lint autoware_interpolation autoware_kalman_filter autoware_lanelet2_utils autoware_marker_utils autoware_motion_utils autoware_node autoware_object_recognition_utils autoware_osqp_interface autoware_point_types autoware_qos_utils autoware_qp_interface autoware_signal_processing autoware_trajectory autoware_vehicle_info_utils autoware_command_gate autoware_core_control autoware_simple_pure_pursuit autoware_awsim_sensor_kit_description autoware_sample_sensor_kit_description autoware_sample_vehicle_description autoware_core_localization autoware_ekf_localizer autoware_gyro_odometer autoware_localization_util autoware_ndt_scan_matcher autoware_pose_initializer autoware_stop_filter autoware_twist2accel autoware_core_map autoware_lanelet2_map_visualizer autoware_map_height_fitter autoware_map_loader autoware_map_projection_loader autoware_core_perception autoware_euclidean_cluster_object_detector autoware_ground_filter autoware_perception_objects_converter autoware_core_planning autoware_mission_planner autoware_objects_of_interest_marker_interface autoware_path_generator autoware_planning_factor_interface autoware_planning_test_manager autoware_planning_topic_converter autoware_route_handler autoware_velocity_smoother autoware_behavior_velocity_planner autoware_behavior_velocity_planner_common autoware_behavior_velocity_stop_line_module autoware_motion_velocity_obstacle_stop_module autoware_motion_velocity_planner autoware_motion_velocity_planner_common autoware_core_sensing autoware_crop_box_filter autoware_downsample_filters autoware_gnss_poser autoware_vehicle_velocity_converter autoware_pyplot autoware_test_node autoware_test_utils autoware_testing autoware_core_vehicle

ROS Distro
humble

Package Summary

Version 1.10.0
License Apache License 2.0
Build type AMENT_CMAKE
Use RECOMMENDED

Repository Summary

Description
Checkout URI https://github.com/autowarefoundation/autoware_core.git
VCS Type git
VCS Version main
Last Updated 2026-10-23
Dev Status DEVELOPED
Released RELEASED
Contributing Help Wanted (-)
Good First Issues (-)
Pull Requests to Review (-)

Package Description

ROS 2 node for testing interface of the nodes in planning module

Maintainers

  • Kyoichi Sugahara
  • Takamasa Horibe
  • Zulfaqar Azmi
  • Mamoru Sobue
  • Yukinari Hisaki
  • Jian Kang
  • Junya Sasaki

Authors

  • Kyoichi Sugahara

Test Utils

Background

Several Autoware’s components and modules have already adopted unit testing, so a common library to ease the process of writing unit tests is necessary.

Purpose

The objective of the test_utils is to develop a unit testing library for the Autoware components. This library will include

  • commonly used functions
  • input/mock data parser
  • maps for testing
  • common routes and mock data for testing.

Available Maps

The following maps are available here

Common

The common map contains multiple types of usable inputs, including shoulder lanes, intersections, and some regulatory elements. The common map is named lanelet2_map.osm in the folder.

common

2 km Straight

The 2 km straight lanelet map consists of two lanes that run in the same direction. The map is named 2km_test.osm.

two_km

The following illustrates the design of the map.

straight_diagram

road_shoulders

The road_shoulders lanelet map consist of a variety of pick-up/drop-off site maps with road_shoulder tags including:

  • pick-up/drop-off sites on the side of street lanes
  • pick-up/drop-off sites on the side of curved lanes
  • pick-up/drop-off sites inside a private area

road_shoulder_test

You can easily launch planning_simulator by

ros2 launch autoware_test_utils psim_road_shoulder.launch.xml vehicle_model:=<> sensor_model:=<> use_sim_time:=true

intersection

The intersections lanelet map consist of a variety of intersections including:

  • 4-way crossing with traffic light
  • 4-way crossing without traffic light
  • T-shape crossing without traffic light
  • intersection with a loop
  • complicated intersection

intersection_test

You can easily launch planning_simulator by

ros2 launch autoware_test_utils psim_intersection.launch.xml vehicle_model:=<> sensor_model:=<> use_sim_time:=true

overlap

The overlap lanelet map includes

  • U-turn with a gap
  • U-turn with full crossing
  • U-turn with half crossing
  • overpass

overlap_test

Example use cases

Autoware Planning Test Manager

The goal of the Autoware Planning Test Manager is to test planning module nodes. The PlanningInterfaceTestManager class (source code) creates wrapper functions based on the test_utils functions.

Generate test data for unit testing

As presented in this PR description, the user can save a snapshot of the scene to a yaml file while running Planning Simulation on the test map.

ros2 launch autoware_test_utils psim_road_shoulder.launch.xml
ros2 launch autoware_test_utils psim_intersection.launch.xml

It uses the autoware autoware_sample_vehicle_description and autoware_sample_sensor_kit by default, and autoware_test_utils/config/test_vehicle_info.param.yaml is exactly the same as that of autoware_sample_vehicle_description. If specified, vehicle_model/sensor_model argument is available.

ros2 service call /autoware_test_utils/topic_snapshot_saver std_srvs/srv/Empty \{\}

File truncated at 100 lines see the full file

CHANGELOG

Changelog for package autoware_test_utils

1.1.0 (2025-05-01)

  • test(path_generator): add tests for path cut feature (#268)

    • add map for test
    • add overpass map
    • refactor & enhance base test class
    • add tests
    • style(pre-commit): autofix

    * fix year created Co-authored-by: Kosuke Takeuchi <<kosuke.tnp@gmail.com>>

    • anonymize test map
    • style(pre-commit): autofix
    • add test map info to README
    • style(pre-commit): autofix
    • make tests work with autoware_trajectory
    • include necessary header
    • fix test case

    * style(pre-commit): autofix ---------Co-authored-by: pre-commit-ci[bot] <66853113+pre-commit-ci[bot]@users.noreply.github.com> Co-authored-by: Kosuke Takeuchi <<kosuke.tnp@gmail.com>> Co-authored-by: Yutaka Kondo <<yutaka.kondo@youtalk.jp>>

  • chore: include iostream and link yaml-cpp for Jazzy (#351)

  • Contributors: Mitsuhiro Sakamoto, Tim Clephas

1.10.0 (2026-09-28)

  • Merge remote-tracking branch 'origin/main' into tmp/bot/bump_version_base

  • fix(autoware_test_utils): fix the planning test manager links (#1425) docs(autoware_test_utils): point the planning test manager links at its new path The package moved from testing/ to planning/ in #1383, and these two links still point at the old path, so both return 404.

  • fix(testing): declare the dependencies these packages use (#1374) Each of these packages uses a package it never declares. Either it includes a header of that package, or it names a symbol of it while the header arrives through another dependency. Both build today only because some declared dependency re-exports the owner, so a change in an unrelated repository can break them without anything here changing. The tag follows where the dependency is used: a use in an installed header or in code compiled into the library takes <depend>, one reached only from test/ takes <test_depend>. System libraries are named by the rosdep key this workspace already prefers. Boost.Serialization is declared separately from libboost-dev because it needs its own library at link time.

  • fix(autoware_test_utils): guard the yaml-cpp target for humble (#1354) The link moved to yaml-cpp::yaml-cpp. Ubuntu 24.04 ships yaml-cpp 0.8, which exports that namespaced target, so jazzy passes. Ubuntu 22.04 ships 0.7, which exports the target without a namespace, so every humble build of this package stops at the CMake generate step: Target "autoware_test_utils" links to target "yaml-cpp::yaml-cpp" but the target was not found. Keep the namespaced target, and define it when the config does not give one. The guard is copied from autoware_map_loader, which already carries it. Use the same target for topic_snapshot_saver, so both link lines agree.

  • fix(autoware_test_utils): link to yaml-cpp target (#1272) Link autoware_test_utils to yaml-cpp target This upstreams RoboStack downstream patch [patch/ros-rolling-autoware-test-utils.patch]{.title-ref}. Best-guess rationale: using yaml-cpp::yaml-cpp makes the dependency explicit for CMake-based package managers, and suppressing deprecated declaration warnings outside MSVC keeps current dependency warnings from breaking strict builds. Co-authored-by: Daisuke Nishimatsu <<nishimarudai@gmail.com>> Co-authored-by: Junya Sasaki <<j2sasaki1990@gmail.com>>

  • fix: autoware_test_manager:Fix flaky No subscriber for <topic> failure (#1181)

    • fix:autoware_test_manager:Fix flaky No subscriber for <topic> failures in autoware_planning_test_manager CI tests (closes #1177)

    * style(pre-commit): autofix ---------Co-authored-by: pre-commit-ci[bot] <66853113+pre-commit-ci[bot]@users.noreply.github.com> Co-authored-by: Yutaka Kondo <<yutaka.kondo@youtalk.jp>>

File truncated at 100 lines see the full file

Launch files

No launch files found

Messages

No message files found.

Services

No service files found

Plugins

No plugins found.

Recent questions tagged autoware_test_utils at Robotics Stack Exchange