309 Commits

Author SHA1 Message Date
PX4 BuildBot
0456df1aff Update submodule fuzztest to latest Thu Sep 11 00:39:37 UTC 2025
- fuzztest in PX4/Firmware (eb1f3465a68fa8e593a566c6c07bd0b4cc6e04f3): 1e47f9d743
    - fuzztest current upstream: 3bf45cbe08
    - Changes: 1e47f9d743...3bf45cbe08

    3bf45cb 2025-09-10 FuzzTest Team - Implement printer autodetection for smart pointers.
3741e31 2025-09-10 Filip Niksic - Implement printer autodetection for smart pointers.
d8f299d 2025-09-10 László Szekeres - Split fuzz_tests_with_proto_inputs into a library and a binary.
4ff90b7 2025-09-08 Xinhao Yuan - Add a static library to generate a self-contained archive.
3194801 2025-09-08 Xinhao Yuan - Process the execution metadata when finalizing coverage.
55c908f 2025-09-08 Xinhao Yuan - Add configs to avoid single job timeout for running multiple configs.
61015dd 2025-09-02 Ivo Ristovski List - No public description
70d96c4 2025-09-02 Ivo Ristovski List - No public description
d897f74 2025-08-27 Xinhao Yuan - Pass runner flags to the Sancov runtime.
62174b5 2025-08-27 Xinhao Yuan - Add MSAN support with a functional test.
8b93bbe 2025-08-26 Xinhao Yuan - Add compact mode to comparison tables to not sample from unpopulated entries.
169baf1 2025-08-26 Filip Niksic - Report crash summary when replaying a corpus or a crashing input.
b87fa7d 2025-08-26 Xinhao Yuan - Prioritize higher scores in CMP features.
e9b49f3 2025-08-21 László Szekeres - A few more LOG macro cleanup.
73721c6 2025-08-21 László Szekeres - Remove unused batch fuzz example.
f6aa6f6 2025-08-20 László Szekeres - Simplify some log statements with FUZZTEST_PCHECK.
b742bb0 2025-08-20 László Szekeres - Change instances of FUZZTEST_CHECK(false) to FUZZTEST_LOG(FATAL).
e91ddf2 2025-08-19 Yamil Morales - Implement sancov runtime API to be able to emit features for other frameworks, and add a new interface to the dispatcher for exposed feature compatibility.
c086c98 2025-08-19 Xinhao Yuan - Allow infinite time limit when there is only one test.
0bf1031 2025-08-19 László Szekeres - Remove redundant and stale metadata files from Centipede codebase.
3623860 2025-08-18 Xinhao Yuan - Fix runner/sancov state lifetime by adding manual lifetime wrappers.
4c66517 2025-08-18 László Szekeres - Consolidate CHECK and LOG implementations.
a1840dc 2025-08-15 Xinhao Yuan - Replace fuzztest_single_test_mode with ..._multi_test_mode_soon_to_be_removed.
fd61d9a 2025-08-15 Xinhao Yuan - Revert an accidentally flipped prediction.
805f32c 2025-08-15 Dan Snyder - Add ability to exclude specific sets of features when creating a seed corpus.
2bdfb36 2025-08-15 Xinhao Yuan - Fix logging.
eca35cc 2025-08-15 Hadi Ravanbakhsh - Mutate newly added fields to protobuf because they can have empty value (e.g., nullopt).
2bc3312 2025-08-14 Xinhao Yuan - Add thread level tracing control and disable tracing for FuzzTest runtime.
ad40838 2025-08-14 Hadi Ravanbakhsh - Add pointer stability to flash_hash_map-s used for caches.
5132f07 2025-08-12 Xinhao Yuan - Implement persistent mode in runner and `CentipedeCallbacks`.
b8a1c8c 2025-08-12 FuzzTest Team - Add Flatbuffers table nested support.
d08c250 2025-08-11 Yamil Morales - Revert HasDefaultFlag: Some instrumentation behaviors were enabled by default causing test failures
9598f90 2025-08-11 Xinhao Yuan - Attempt to fix a potential ASAN false positive of "initialization-order-fiasco".
fb61507 2025-08-11 Xinhao Yuan - Introduce `EXPECT_THAT_LOG` macro to improve test failure messages.
dff1bd3 2025-08-11 Filip Niksic - Use the same seed for mutation runs when testing parallel efficiency.
3aa1c32 2025-08-11 Filip Niksic - Correctly initialize `fields_cache_` in the protobuf domain.
1d21791 2025-08-08 FuzzTest Team - No public description
4bb9339 2025-08-08 Dan Snyder - Add a tool for analyzing feature files from centipede.
85f38ce 2025-08-08 Hadi Ravanbakhsh - Avoid reading from files in construction time of the protobuf domain.
a2f4cc5 2025-08-08 Xinhao Yuan - Add more logging to help explain failures.
4864826 2025-08-08 Xinhao Yuan - No public description
fd67d41 2025-08-08 Hadi Ravanbakhsh - Cache fields of proto descriptors.
81f0e30 2025-08-08 FuzzTest Team - Add GetStderrFdDup() for logging in signal handler.
2019a35 2025-08-08 Xinhao Yuan - Add GetStderrFdDup() for logging in signal handler.
97d508a 2025-08-08 Hadi Ravanbakhsh - Create a cache for recursive analysis in proto policy and is passed-down by pointer for nested protos.
691fac2 2025-08-08 Hadi Ravanbakhsh - Add a parallel mutation efficiency test for protobuf mutation.
0a6f95e 2025-08-07 Yamil Morales - No public description
a4725f0 2025-08-07 Filip Niksic - No public description
deebe22 2025-08-07 Ali Hijazi - Pass the `seed` by reference to `print_one_arg`.
cedea38 2025-08-06 Xinhao Yuan - Create a public mutex for atomically printing execution logs.
c89794a 2025-08-06 Xinhao Yuan - Make execution log printing less verbose in command.
67642ca 2025-08-06 Ali Hijazi - Minor: Remove stray semicolon
2d6ca21 2025-08-05 Yamil Morales - Refactor sancov related objects and coverage processing functions out of the runner with the purpose of sharing it with other frameworks for emitting features.
a292a7b 2025-08-05 Dan Snyder - Clear features when the input is rejected
be7434d 2025-08-04 Xinhao Yuan - Abort on external failures in runner mode instead of keep running.
f0ba189 2025-08-01 Xinhao Yuan - Fix test filtering when running FuzzTest with the separate Centipede binary.
c1c656a 2025-07-31 Alex Light - Add fuzztest::unstable::ParseReproducerValue function.
bdb32e6 2025-07-28 Yamil Morales - No public description
afcef76 2025-07-28 Copybara-Service - Merge pull request #1791 from ShadowBearVR:main
a183551 2025-07-28 Collin MacDonald - Ensure Corpus Telemetry is correctly collected
81e4fbd 2025-07-25 Alex Light - Allow fuzz test users to define source-code printers
ff0ac29 2025-07-22 László Szekeres - No public description
b8817b3 2025-07-22 Hadi Ravanbakhsh - No public description
33ad8c0 2025-07-21 Hadi Ravanbakhsh - No public description
4f2e879 2025-07-21 FuzzTest Team - Add flatbuffers enum domain
391c34a 2025-07-17 Hadi Ravanbakhsh - No public description
0f82dad 2025-07-15 Copybara-Service - Merge pull request #1774 from backes:fix-invalid-seed-typo
41aff1b 2025-07-15 Clemens Backes - Fix reporting invalid multi-value seeds
7bab06f 2025-07-12 FuzzTest Team - No public description
5b5b1af 2025-07-11 FuzzTest Team - No public description
e22ceff 2025-07-10 FuzzTest Team - Add flatbuffers domain
1d26596 2025-07-09 Xinhao Yuan - Extend Command for more control over a single exectuion. #Centipede
3cb8569 2025-07-09 Xinhao Yuan - No public description
d5857a5 2025-07-01 FuzzTest Team - No public description
62dfb3a 2025-06-30 Filip Niksic - Add the ability to set an external crash reporter for crash summaries.
31ca9be 2025-06-30 Filip Niksic - Report a summary of crashes at the end of an "update corpus database" session.
45a1c3a 2025-06-20 FuzzTest Team - Fix a potential race condition when incrementing static counters.
6c64b55 2025-06-17 FuzzTest Team - No public description
4dda385 2025-06-17 Xinhao Yuan - Add a test for crash deduplication.
3a04e5c 2025-06-17 Xinhao Yuan - Basic dispatcher prototype.
dad90ee 2025-06-17 Xinhao Yuan - No public description
69cac4b 2025-06-17 Hadi Ravanbakhsh - Limit the input size when printing in human-readable format.
466e457 2025-06-17 Xinhao Yuan - Add new experimental result types for the Dispatcher prototype.
7618998 2025-06-13 Samuel Freilich - Also bump Protobuf to latest version
18b45b9 2025-06-13 Ali Hijazi - Remove Deprecated Call to FieldDescriptor::is_optional
8c215ac 2025-06-12 Xinhao Yuan - Make Centipede calls aware of termination.
2546e95 2025-06-12 Xinhao Yuan - Fix MacOS build.
27eb467 2025-06-11 Copybara-Service - Merge pull request #1742 from sfreilich:patch-1
b0db9fd 2025-06-11 Filip Niksic - Split crash metadata into description and signature.
c2b8c85 2025-06-11 Samuel Freilich - Update Abseil and Riegeli
2025-09-11 00:39:37 +00:00
Beat Küng
3d1cace7b7 test: add google fuzztest to unit test build
From https://github.com/google/fuzztest.
This will now also add gtest (via cmake FetchContent)

And requires newer cmake (container updates):
CMake 3.19 or higher is required.  You are running version 3.16.3
2025-07-11 10:39:28 +02:00
mahima-yoga
ee953640ee MAVSDK: bump version to 3.7.0 2025-07-09 07:43:20 +12:00
Julian Oes
bfbd9bfe27 mavsdk_test: fix mission timeout check
We shouldn't adjust for lockstep speedup twice.
2025-06-30 09:20:44 -07:00
Julian Oes
d03b1171f9 mavsdk_tests: fix mission finished state
This is an attempt to use MAVSDK's is_mission_finished APIs instead.
2025-06-30 09:20:44 -07:00
Julian Oes
4126dde11f mavsdk_tests: bump to v3.4.0
This should fix some of the lockups and segfaults we see.
2025-05-19 07:37:02 -07:00
Julian Oes
d4be5d3ff0 mavsdk_tests: add events to log 2025-05-19 07:37:02 -07:00
Julian Oes
1f65cc46b9 mavsdk_tests: bump MAVSDK to v3.3.4 2025-05-19 07:37:02 -07:00
Julian Oes
56eb9bcc18 mavsdk_tests: workaround race condition
PX4 needs a bit of time to process an uploaded mission before it is
ready to accept the mission mode.

Therefore, we need to wait a bit.

Alternatively, we could wait on the mission progress arriving properly,
but this sleep is simple enough for now.
2025-05-19 07:37:02 -07:00
Julian Oes
e19d245355 mavsdk_tests: remove hacks for rally points
We can now just use MAVSDK to upload rally points.
2025-05-19 07:37:02 -07:00
Julian Oes
66deae172d mavsdk_tests: update to MAVSDK 3.0.0 2025-05-19 07:37:02 -07:00
GuillaumeLaine
ba35ca461c ci: add external navigation integration tests 2025-04-04 09:12:53 +02:00
Beat Küng
0e4c794674 ros_tests: change filter to use all tests
The name is being changed in https://github.com/Auterion/px4-ros2-interface-lib/pull/8
2025-04-04 09:12:53 +02:00
Beat Küng
3d6056411f integration tests: add --force-color & set in CI
github actions supports color output, but does not report as a tty.
See https://github.com/actions/runner/issues/241.
2025-04-04 09:12:53 +02:00
Beat Küng
a954ec4d55 test: add ros integration test runner script & config 2025-04-04 09:12:53 +02:00
Beat Küng
7c14a63855 refactor mavsdk_tests: move code into separate classes & extract mavsdk-specifics
Allows it to be reused for other integration tests, like ros.
2025-04-04 09:12:53 +02:00
Beat Küng
d78af5436e mavsdk_tests: highlight px4 errors & reset color on gazebo output 2025-04-04 09:12:53 +02:00
Beat Küng
45285a57ad fix mavsdk_tests: add ',' to test_filter config 2025-04-04 09:12:53 +02:00
Beat Küng
bbcd153e94 sitl: add generic way to override params via ENV variables 2025-04-04 09:12:53 +02:00
Jacob Dahl
4c0a63f679
mavsdk_tests: add multicopter alt hold test (#24396)
* mavsdk_tests: add multicopter alt hold test

* fix test filter

* increase altitude tolerance to 10m as a test

* reduce to 1m tolerance

* increase to 5m tolerance

* increase to 2m tolerance

* reduce back to 1m

* delay 60 seconds

* fix log upload

* fix ulog upload path

* make altitude tolerance in tester.wait_until_altitude configurable

* fix lambda

* default arg in declaration

* tighten up tolerance
2025-03-21 16:21:10 -06:00
Balduin
c0100ed4e7 mavsdk tests: use tester sleep_for function
the previously used std::this_thread::sleep_for is with respect to host
system time which is different from autopilot time if:

 - speed factor != 1
 - something runs slower than realtime regardless of speed factor
 - debugging or otherwise interrupting PX4 control code

tester.sleep_for (which already existed) correctly sleeps w.r.t.
px4/simulation time.
2025-03-18 10:25:38 +01:00
Matthias Grob
ed9111ec49 Remove obstacle avoidance test with Gazebo classic and ROS 1 2025-02-18 14:33:16 +01:00
Silvan Fuhrer
58d3e1ea8e
test: in VTOL integration test use VTOL_LAND (#24261)
Signed-off-by: Silvan Fuhrer <silvan@auterion.com>
2025-01-28 11:22:51 +01:00
Daniel Agar
7288d16855 mavsdk_tests set nice levels for px4/gzclient/mavsdk_tests 2024-11-20 14:45:11 -05:00
Daniel Agar
635e162a0c test/mavsdk_tests: continue sending manual control between steps in fly_forward_in_posctl()/fly_forward_in_altctl() 2024-11-20 09:36:06 -08:00
Jacob Dahl
ed3cac9122 tests: increase timeout for armable check 2024-11-05 21:13:10 -05:00
Ramon Roche
16c77be7c0 tests: loosen radius of vtol rtl landing pos check 2024-08-26 14:05:17 -04:00
Matthias Grob
f2bca92221 Fix duplicate newlines at the end of files 2024-07-19 14:33:36 +02:00
Silvan Fuhrer
0379048ad2 mavsdk_tests: increase acceptance radius for position check on offboard landing
Signed-off-by: Silvan Fuhrer <silvan@auterion.com>
2024-05-29 20:46:26 -04:00
Silvan Fuhrer
97191bd60f autopilot_tester: for mission end timeout check take speed factor into account
And increase the (simulation time) timeouts.

Signed-off-by: Silvan Fuhrer <silvan@auterion.com>
2024-04-23 16:37:31 +02:00
Silvan Fuhrer
818e318334 autopilot_tester: reduce mission distance for wind world
Signed-off-by: Silvan Fuhrer <silvan@auterion.com>
2024-04-23 16:37:31 +02:00
Silvan Fuhrer
59232c27ae autopilot_tester: use normal VTOL mission for airspeed blockage test
Signed-off-by: Silvan Fuhrer <silvan@auterion.com>
2024-04-23 16:37:31 +02:00
Daniel Agar
78bbb66568 delete SYS_MC_EST_GROUP
- introduce per module parameters (EKF2_EN, LPE_EN, ATT_EN)
 - add basic checks to prevent EKF2 + LPE running simultaneously
2024-04-15 16:06:08 -04:00
Matthias Grob
4e3bd4f196 MAVSDK tests: shorten Position, Altitude control flights
We get more than 5 meter away much quicker.
2024-02-22 15:29:13 +01:00
Matthias Grob
0cc4b41a51 MAVSDK test: Fix fly_forward_in_altctl() timing 2024-02-22 15:29:13 +01:00
Matthias Grob
f602228048 MAVSDK test: increase offboard position threshold
This is a workaround to hotfix CI but the root cause is #22792
(MAVSDK test failing after EKF change, accelerometer simulation issues not learned anymore?)
2024-02-22 15:29:13 +01:00
PerFrivik
9b122adae4 Fix fly_forward_in_posctl() timing 2024-02-22 15:29:13 +01:00
Matthias Grob
75bb25a44c test_vtol_figure_eight: fix altitude check
wait_until_altitude() checks for absolute altitude being
close so checking for 1m below the setpoint can fail
if the speedup results in no sample inside the altitude
window being checked.

Ideally the test could check if the takeoff is done directly
instead of comparing altitudes in the first place.
2023-12-12 20:22:23 +01:00
Konrad
9387de8282 mavsdk figure 8 test: Increase time of timeout 2023-11-22 16:47:38 -05:00
Silvan Fuhrer
5efcde7412 mavsdk_tests: add two new tests for VTOLs
- add functionality to specify world name for simulation in case name
- add test for triggering an airspeed invalidation in case of pitot blockage
- add test for high wind (ramped up wind over short period) to NOT invalidate airspeed in this case

Signed-off-by: Silvan Fuhrer <silvan@auterion.com>
2023-11-09 09:42:43 +01:00
Konrad
72c6db6b23 vtol_rtl_test: explicitly disable RTL_FORCE_APPROACH for RTL direct Home testcase 2023-11-08 17:48:34 +01:00
Konrad
e3473a0f90 mavsdk_tests: Add integration tests for figure of 8 2023-10-31 15:57:59 -04:00
Konrad
2e850371c5 test_vtol_rtl: increase time to disarm to make tailsitter CI pass 2023-10-31 14:16:02 +01:00
Konrad
654e885003 mavsdk: Add integration tests for RTL with approaches 2023-10-31 14:16:02 +01:00
Konrad
24f59dd465 autopilot_tester: Add mavlink passthrough to end custom commands 2023-10-31 14:16:02 +01:00
Konrad
4227e2b7e7 test_vtol_mission: Increase thresholds for tests to pass. Temporarily disable checks tracks fro reverse mission.
Current threshhold has no margins of errors with the set acceptance radius. Increase corridor radius by 5m.
Increase time to disarm for tailsitter test to pass.
Rverse mission needs check tracks test disabled since mavsdk does not really work with mission has reverse order.
2023-09-29 14:25:03 +02:00
RomanBapst
6fca984c3f test_vtol_mission: Add additional testing for VTOL RTL and reverse mission RTL
mavsdk-test: added a vtol mission without a landing at the end (used for reversed RTL)
math_helpers: added function to compute local position from a raw mission item

Signed-off-by: RomanBapst <bapstroman@gmail.com>
2023-09-29 14:25:03 +02:00
Beat Küng
57297234e2 autopilot_tester: slower descend for fly_forward_in_offboard_attitude
As CI was sometimes failing
2023-08-08 12:28:52 -04:00
Beat Küng
0277a6486f mavsdk_tests: add offboard attitude test & run with Q estimator 2023-08-04 11:27:31 -04:00
Junwoo Hwang
9c001f2e40
Fix SITL Test failure: Place PX4 instance runner after Gazebo server runner (#21230)
* MAVSDK_Test_Runner: Place PX4 instance runner after Gazebo server runner

- This was a nasty bug where starting PX4 instance first, then starting
  Gazebo server was causing PX4 instance' EKF to freak out, probably
because it doesn't like getting data a while after it is started
- Detailed breakdown is given here: https://github.com/PX4/PX4-Autopilot/issues/21229#issuecomment-1450761542
- This now guarantees that such edge case won't occur and MAVSDK test
  will run as it should

* MAVSDK Test Runner: Retain comment within 79 character limit

- To pass flake8 python style check

* Update test/mavsdk_tests/mavsdk_test_runner.py

Co-authored-by: Julian Oes <julian@oes.ch>

---------

Co-authored-by: Julian Oes <julian@oes.ch>
2023-03-26 11:27:01 +09:00