chore: Add E2E test for path server demos - #44
Conversation
Currently our tests do not exercise the path_server_demo. This has lead to regressions when testing (particularly with DDS) as our integration tests may pass but the first demo which people try is broken. In this test we check the REST endpoints of the demo correctly integrate with the rest of the system. Signed-off-by: Arjo Chakravarty <arjoc@intrinsic.ai>
|
@SamuelFoo please review |
|
The changes look good but maybe we need to specify (I don't seem to have the option to submit a review, so I’m leaving this as a comment.) |
Signed-off-by: Arjo Chakravarty <arjoc@intrinsic.ai>
Thanks for catching that. |
Progress Update 💬 cc @arjo129Reviewed. The current proposed
Steps To Run Local CI Workflow 📘Follow the steps below to run the CI locally. cd $HOMEgit clone https://github.com/open-rmf/next_gen_prototype --branch arjoc/feat/web_demo_regression_tests --single-branch --depth 1 && cd next_gen_prototypeact -v -j ci-check --reuse --pull=falseVerify ✅By running the commands, you should get a similar output like what is shown below: ...
| ============================== 5 passed in 14.59s ==============================
Finished <<< rmf_reservation_tests [15.3s] s]
|
| Summary: 3 packages finished [1min 41s]
| 1 package had stderr output: rmf_path_server_test
| build/rmf_path_server_demo/pytest.xml: 1 test, 0 errors, 0 failures, 0 skipped
| build/rmf_path_server_test/pytest.xml: 5 tests, 0 errors, 0 failures, 0 skipped
| build/rmf_reservation_tests/pytest.xml: 5 tests, 0 errors, 0 failures, 0 skipped
|
| Summary: 11 tests, 0 errors, 0 failures, 0 skipped
[Next-Gen Prototype CI/Colcon Overlay Build & Test Suite (rmw_cyclonedds_cpp)-2] ✅ Success - Main Run Automated Verification Tests [2m50.345929732s]
[Next-Gen Prototype CI/Colcon Overlay Build & Test Suite (rmw_cyclonedds_cpp)-2] [DEBUG] skipping post step for 'Checkout Prototype Repository': no action model available
[Next-Gen Prototype CI/Colcon Overlay Build & Test Suite (rmw_cyclonedds_cpp)-2] ⭐ Run Complete job
[Next-Gen Prototype CI/Colcon Overlay Build & Test Suite (rmw_cyclonedds_cpp)-2] Cleaning up container for job Colcon Overlay Build & Test Suite (rmw_cyclonedds_cpp)
[Next-Gen Prototype CI/Colcon Overlay Build & Test Suite (rmw_cyclonedds_cpp)-2] [DEBUG] Loading revision from git directory
[Next-Gen Prototype CI/Colcon Overlay Build & Test Suite (rmw_cyclonedds_cpp)-2] [DEBUG] Found revision: 5e1ca9b531ac441b5370e272d6ffd44dd4b5b694
[Next-Gen Prototype CI/Colcon Overlay Build & Test Suite (rmw_cyclonedds_cpp)-2] [DEBUG] HEAD points to '5e1ca9b531ac441b5370e272d6ffd44dd4b5b694'
[Next-Gen Prototype CI/Colcon Overlay Build & Test Suite (rmw_cyclonedds_cpp)-2] [DEBUG] using github ref: refs/heads/arjoc/feat/web_demo_regression_tests
[Next-Gen Prototype CI/Colcon Overlay Build & Test Suite (rmw_cyclonedds_cpp)-2] [DEBUG] Found revision: 5e1ca9b531ac441b5370e272d6ffd44dd4b5b694
[Next-Gen Prototype CI/Colcon Overlay Build & Test Suite (rmw_cyclonedds_cpp)-2] ✅ Success - Complete job
[Next-Gen Prototype CI/Colcon Overlay Build & Test Suite (rmw_cyclonedds_cpp)-2] 🏁 Job succeeded
Follow-Up Action 💬@arjo129 Similar to another similar python-based ROS 2 package,
After adding the above files, run the steps above to ensure the CI still passes locally. Once CI passing again, should be good to merge. |
Signed-off-by: Arjo Chakravarty <arjoc@intrinsic.ai>
There was a problem hiding this comment.
LGTM. ✅ Ready to merge.
However, one thing of note, when running the CI locally, the flakiness of the following unit tests, given their use of arbitrary timeouts, seems significant to cause the CI workflow, ci_check, to fail sometimes, given a lower spec device, and therefore can be further reduced:
- test_spawner_two_robot_scenario
- test_follow_scenario
- test_scenario
- test_plan_generation_and_publication
- test_single_reservation
- test_robot_sim_behavior
Will open a new PR to address this in the very near future, as this issue is not confined to only rmf_path_server_demo which is the main focus of this thread.
|
Can you tell me which rmw you're seeing flakiness on. GitHub runners are pretty low specced. |
Currently our tests do not exercise the path_server_demo. This has lead
to regressions when testing (particularly with DDS) as our integration tests
may pass but the first demo which people try is broken. In this test we
check the REST endpoints of the demo correctly integrate with the rest
of the system.
GenAI Use
We follow OSRA's policy on GenAI tools
Generated-by: