Package Summary
| Version | 1.10.0 |
| License | Apache License 2.0 |
| Build type | AMENT_CMAKE |
| Use | RECOMMENDED |
Repository Summary
| Checkout URI | https://github.com/autowarefoundation/autoware_core.git |
| VCS Type | git |
| VCS Version | main |
| Last Updated | 2026-10-07 |
| Dev Status | DEVELOPED |
| Released | RELEASED |
| Contributing |
Help Wanted (-)
Good First Issues (-) Pull Requests to Review (-) |
Package Description
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.

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.

The following illustrates the design of the map.
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

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

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

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 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
Package Dependencies
System Dependencies
Dependant Packages
Launch files
Messages
Services
Plugins
Recent questions tagged autoware_test_utils at Robotics Stack Exchange
Package Summary
| Version | 1.10.0 |
| License | Apache License 2.0 |
| Build type | AMENT_CMAKE |
| Use | RECOMMENDED |
Repository Summary
| Checkout URI | https://github.com/autowarefoundation/autoware_core.git |
| VCS Type | git |
| VCS Version | main |
| Last Updated | 2026-10-07 |
| Dev Status | DEVELOPED |
| Released | RELEASED |
| Contributing |
Help Wanted (-)
Good First Issues (-) Pull Requests to Review (-) |
Package Description
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.

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.

The following illustrates the design of the map.
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

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

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

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 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
Package Dependencies
System Dependencies
Dependant Packages
Launch files
Messages
Services
Plugins
Recent questions tagged autoware_test_utils at Robotics Stack Exchange
Package Summary
| Version | 1.10.0 |
| License | Apache License 2.0 |
| Build type | AMENT_CMAKE |
| Use | RECOMMENDED |
Repository Summary
| Checkout URI | https://github.com/autowarefoundation/autoware_core.git |
| VCS Type | git |
| VCS Version | main |
| Last Updated | 2026-10-07 |
| Dev Status | DEVELOPED |
| Released | RELEASED |
| Contributing |
Help Wanted (-)
Good First Issues (-) Pull Requests to Review (-) |
Package Description
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.

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.

The following illustrates the design of the map.
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

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

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

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 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
Package Dependencies
System Dependencies
Dependant Packages
Launch files
Messages
Services
Plugins
Recent questions tagged autoware_test_utils at Robotics Stack Exchange
Package Summary
| Version | 1.10.0 |
| License | Apache License 2.0 |
| Build type | AMENT_CMAKE |
| Use | RECOMMENDED |
Repository Summary
| Checkout URI | https://github.com/autowarefoundation/autoware_core.git |
| VCS Type | git |
| VCS Version | main |
| Last Updated | 2026-10-07 |
| Dev Status | DEVELOPED |
| Released | RELEASED |
| Contributing |
Help Wanted (-)
Good First Issues (-) Pull Requests to Review (-) |
Package Description
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.

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.

The following illustrates the design of the map.
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

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

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

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 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
Package Dependencies
System Dependencies
Dependant Packages
Launch files
Messages
Services
Plugins
Recent questions tagged autoware_test_utils at Robotics Stack Exchange
Package Summary
| Version | 1.10.0 |
| License | Apache License 2.0 |
| Build type | AMENT_CMAKE |
| Use | RECOMMENDED |
Repository Summary
| Checkout URI | https://github.com/autowarefoundation/autoware_core.git |
| VCS Type | git |
| VCS Version | main |
| Last Updated | 2026-10-07 |
| Dev Status | DEVELOPED |
| Released | RELEASED |
| Contributing |
Help Wanted (-)
Good First Issues (-) Pull Requests to Review (-) |
Package Description
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.

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.

The following illustrates the design of the map.
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

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

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

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 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
Package Dependencies
System Dependencies
Dependant Packages
Launch files
Messages
Services
Plugins
Recent questions tagged autoware_test_utils at Robotics Stack Exchange
Package Summary
| Version | 1.10.0 |
| License | Apache License 2.0 |
| Build type | AMENT_CMAKE |
| Use | RECOMMENDED |
Repository Summary
| Checkout URI | https://github.com/autowarefoundation/autoware_core.git |
| VCS Type | git |
| VCS Version | main |
| Last Updated | 2026-10-07 |
| Dev Status | DEVELOPED |
| Released | RELEASED |
| Contributing |
Help Wanted (-)
Good First Issues (-) Pull Requests to Review (-) |
Package Description
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.

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.

The following illustrates the design of the map.
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

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

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

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 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
Package Dependencies
System Dependencies
Dependant Packages
Launch files
Messages
Services
Plugins
Recent questions tagged autoware_test_utils at Robotics Stack Exchange
Package Summary
| Version | 1.10.0 |
| License | Apache License 2.0 |
| Build type | AMENT_CMAKE |
| Use | RECOMMENDED |
Repository Summary
| Checkout URI | https://github.com/autowarefoundation/autoware_core.git |
| VCS Type | git |
| VCS Version | main |
| Last Updated | 2026-10-07 |
| Dev Status | DEVELOPED |
| Released | RELEASED |
| Contributing |
Help Wanted (-)
Good First Issues (-) Pull Requests to Review (-) |
Package Description
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.

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.

The following illustrates the design of the map.
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

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

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

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 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
Package Dependencies
System Dependencies
Dependant Packages
Launch files
Messages
Services
Plugins
Recent questions tagged autoware_test_utils at Robotics Stack Exchange
Package Summary
| Version | 1.10.0 |
| License | Apache License 2.0 |
| Build type | AMENT_CMAKE |
| Use | RECOMMENDED |
Repository Summary
| Checkout URI | https://github.com/autowarefoundation/autoware_core.git |
| VCS Type | git |
| VCS Version | main |
| Last Updated | 2026-10-07 |
| Dev Status | DEVELOPED |
| Released | RELEASED |
| Contributing |
Help Wanted (-)
Good First Issues (-) Pull Requests to Review (-) |
Package Description
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.

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.

The following illustrates the design of the map.
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

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

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

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 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
Package Dependencies
System Dependencies
Dependant Packages
Launch files
Messages
Services
Plugins
Recent questions tagged autoware_test_utils at Robotics Stack Exchange
Package Summary
| Version | 1.10.0 |
| License | Apache License 2.0 |
| Build type | AMENT_CMAKE |
| Use | RECOMMENDED |
Repository Summary
| Checkout URI | https://github.com/autowarefoundation/autoware_core.git |
| VCS Type | git |
| VCS Version | main |
| Last Updated | 2026-10-07 |
| Dev Status | DEVELOPED |
| Released | RELEASED |
| Contributing |
Help Wanted (-)
Good First Issues (-) Pull Requests to Review (-) |
Package Description
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.

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.

The following illustrates the design of the map.
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

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

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

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 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
Package Dependencies
System Dependencies
Dependant Packages
Launch files
Messages
Services
Plugins
Recent questions tagged autoware_test_utils at Robotics Stack Exchange
Package Summary
| Version | 1.10.0 |
| License | Apache License 2.0 |
| Build type | AMENT_CMAKE |
| Use | RECOMMENDED |
Repository Summary
| Checkout URI | https://github.com/autowarefoundation/autoware_core.git |
| VCS Type | git |
| VCS Version | main |
| Last Updated | 2026-10-07 |
| Dev Status | DEVELOPED |
| Released | RELEASED |
| Contributing |
Help Wanted (-)
Good First Issues (-) Pull Requests to Review (-) |
Package Description
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.

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.

The following illustrates the design of the map.
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

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

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

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 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
Package Dependencies
System Dependencies
Dependant Packages
Launch files
Messages
Services
Plugins
Recent questions tagged autoware_test_utils at Robotics Stack Exchange
Package Summary
| Version | 1.10.0 |
| License | Apache License 2.0 |
| Build type | AMENT_CMAKE |
| Use | RECOMMENDED |
Repository Summary
| Checkout URI | https://github.com/autowarefoundation/autoware_core.git |
| VCS Type | git |
| VCS Version | main |
| Last Updated | 2026-10-07 |
| Dev Status | DEVELOPED |
| Released | RELEASED |
| Contributing |
Help Wanted (-)
Good First Issues (-) Pull Requests to Review (-) |
Package Description
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.

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.

The following illustrates the design of the map.
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

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

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

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 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
Package Dependencies
System Dependencies
Dependant Packages
Launch files
Messages
Services
Plugins
Recent questions tagged autoware_test_utils at Robotics Stack Exchange
Package Summary
| Version | 1.10.0 |
| License | Apache License 2.0 |
| Build type | AMENT_CMAKE |
| Use | RECOMMENDED |
Repository Summary
| Checkout URI | https://github.com/autowarefoundation/autoware_core.git |
| VCS Type | git |
| VCS Version | main |
| Last Updated | 2026-10-07 |
| Dev Status | DEVELOPED |
| Released | RELEASED |
| Contributing |
Help Wanted (-)
Good First Issues (-) Pull Requests to Review (-) |
Package Description
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.

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.

The following illustrates the design of the map.
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

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

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

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 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
Package Dependencies
System Dependencies
Dependant Packages
Launch files
Messages
Services
Plugins
Recent questions tagged autoware_test_utils at Robotics Stack Exchange
Package Summary
| Version | 1.10.0 |
| License | Apache License 2.0 |
| Build type | AMENT_CMAKE |
| Use | RECOMMENDED |
Repository Summary
| Checkout URI | https://github.com/autowarefoundation/autoware_core.git |
| VCS Type | git |
| VCS Version | main |
| Last Updated | 2026-10-07 |
| Dev Status | DEVELOPED |
| Released | RELEASED |
| Contributing |
Help Wanted (-)
Good First Issues (-) Pull Requests to Review (-) |
Package Description
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.

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.

The following illustrates the design of the map.
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

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

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

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 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
Package Dependencies
System Dependencies
Dependant Packages
Launch files
Messages
Services
Plugins
Recent questions tagged autoware_test_utils at Robotics Stack Exchange
Package Summary
| Version | 1.10.0 |
| License | Apache License 2.0 |
| Build type | AMENT_CMAKE |
| Use | RECOMMENDED |
Repository Summary
| Checkout URI | https://github.com/autowarefoundation/autoware_core.git |
| VCS Type | git |
| VCS Version | main |
| Last Updated | 2026-10-07 |
| Dev Status | DEVELOPED |
| Released | RELEASED |
| Contributing |
Help Wanted (-)
Good First Issues (-) Pull Requests to Review (-) |
Package Description
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.

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.

The following illustrates the design of the map.
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

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

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

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 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
Package Dependencies
System Dependencies
Dependant Packages
Launch files
Messages
Services
Plugins
Recent questions tagged autoware_test_utils at Robotics Stack Exchange
Package Summary
| Version | 1.10.0 |
| License | Apache License 2.0 |
| Build type | AMENT_CMAKE |
| Use | RECOMMENDED |
Repository Summary
| Checkout URI | https://github.com/autowarefoundation/autoware_core.git |
| VCS Type | git |
| VCS Version | main |
| Last Updated | 2026-10-07 |
| Dev Status | DEVELOPED |
| Released | RELEASED |
| Contributing |
Help Wanted (-)
Good First Issues (-) Pull Requests to Review (-) |
Package Description
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.

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.

The following illustrates the design of the map.
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

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

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

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 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
Package Dependencies
System Dependencies
Dependant Packages
Launch files
Messages
Services
Plugins
Recent questions tagged autoware_test_utils at Robotics Stack Exchange
Package Summary
| Version | 1.10.0 |
| License | Apache License 2.0 |
| Build type | AMENT_CMAKE |
| Use | RECOMMENDED |
Repository Summary
| Checkout URI | https://github.com/autowarefoundation/autoware_core.git |
| VCS Type | git |
| VCS Version | main |
| Last Updated | 2026-10-07 |
| Dev Status | DEVELOPED |
| Released | RELEASED |
| Contributing |
Help Wanted (-)
Good First Issues (-) Pull Requests to Review (-) |
Package Description
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.

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.

The following illustrates the design of the map.
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

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

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

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 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
Package Dependencies
System Dependencies
Dependant Packages
Launch files
Messages
Services
Plugins
Recent questions tagged autoware_test_utils at Robotics Stack Exchange
Package Summary
| Version | 1.10.0 |
| License | Apache License 2.0 |
| Build type | AMENT_CMAKE |
| Use | RECOMMENDED |
Repository Summary
| Checkout URI | https://github.com/autowarefoundation/autoware_core.git |
| VCS Type | git |
| VCS Version | main |
| Last Updated | 2026-10-07 |
| Dev Status | DEVELOPED |
| Released | RELEASED |
| Contributing |
Help Wanted (-)
Good First Issues (-) Pull Requests to Review (-) |
Package Description
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.

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.

The following illustrates the design of the map.
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

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

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

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 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
Package Dependencies
System Dependencies
Dependant Packages
Launch files
Messages
Services
Plugins
Recent questions tagged autoware_test_utils at Robotics Stack Exchange
Package Summary
| Version | 1.10.0 |
| License | Apache License 2.0 |
| Build type | AMENT_CMAKE |
| Use | RECOMMENDED |
Repository Summary
| Checkout URI | https://github.com/autowarefoundation/autoware_core.git |
| VCS Type | git |
| VCS Version | main |
| Last Updated | 2026-10-07 |
| Dev Status | DEVELOPED |
| Released | RELEASED |
| Contributing |
Help Wanted (-)
Good First Issues (-) Pull Requests to Review (-) |
Package Description
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.

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.

The following illustrates the design of the map.
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

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

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

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 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
Package Dependencies
System Dependencies
Dependant Packages
Launch files
Messages
Services
Plugins
Recent questions tagged autoware_test_utils at Robotics Stack Exchange
Package Summary
| Version | 1.10.0 |
| License | Apache License 2.0 |
| Build type | AMENT_CMAKE |
| Use | RECOMMENDED |
Repository Summary
| Checkout URI | https://github.com/autowarefoundation/autoware_core.git |
| VCS Type | git |
| VCS Version | main |
| Last Updated | 2026-10-07 |
| Dev Status | DEVELOPED |
| Released | RELEASED |
| Contributing |
Help Wanted (-)
Good First Issues (-) Pull Requests to Review (-) |
Package Description
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.

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.

The following illustrates the design of the map.
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

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

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

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 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
Package Dependencies
System Dependencies
Dependant Packages
Launch files
Messages
Services
Plugins
Recent questions tagged autoware_test_utils at Robotics Stack Exchange
Package Summary
| Version | 1.10.0 |
| License | Apache License 2.0 |
| Build type | AMENT_CMAKE |
| Use | RECOMMENDED |
Repository Summary
| Checkout URI | https://github.com/autowarefoundation/autoware_core.git |
| VCS Type | git |
| VCS Version | main |
| Last Updated | 2026-10-07 |
| Dev Status | DEVELOPED |
| Released | RELEASED |
| Contributing |
Help Wanted (-)
Good First Issues (-) Pull Requests to Review (-) |
Package Description
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.

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.

The following illustrates the design of the map.
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

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

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

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 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