在多个模拟世界/多个场景上自动测试 ros2

问题描述 投票:0回答:1

如何在具有不同场景的多个模拟世界中测试 ros2。 我如何加载世界、场景、测试数据。 保存结果并与预期结果进行比较,与预期有偏差

ros ros2
1个回答
0
投票

一个解决方案是使用启动文件EventHandlers.

循环应遵循以下步骤:

  1. 使用启动文件和 .yaml 参数文件启动第一个节点。节点的名称应该使用循环在启动文件中定义,并在节点名称后附加一个数字。例如:Node_test1, Node_test2, ...
  2. 在节点内定义一个函数,将测试结果保存在文件中。
  3. 使用事件处理程序等待第一个节点完成,然后使用新参数运行第二个节点。

.yaml 文件应该这样定义:

Node_test1:
  ros__parameters:
  param_example: 0.01
  second_param_example: 10000

Node_test2:
  ros__parameters:
    param_example: 0.02
    second_param_example: 20000

然后您可以创建一个不同的节点,它将所有文件加载到一个文件夹中,进行所需的计算,最后将结果保存在另一个文件中。

© www.soinside.com 2019 - 2024. All rights reserved.