mirror of
https://github.com/mollyim/webrtc.git
synced 2025-05-13 22:00:47 +01:00

No-Try: True Bug: None Change-Id: I4ff887649145bc6c240873685f944b470c309747 Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/296442 Reviewed-by: Jeremy Leconte <jleconte@google.com> Auto-Submit: Mirko Bonadei <mbonadei@webrtc.org> Commit-Queue: Harald Alvestrand <hta@webrtc.org> Reviewed-by: Harald Alvestrand <hta@webrtc.org> Cr-Commit-Position: refs/heads/main@{#39492}
33 lines
1.7 KiB
Markdown
33 lines
1.7 KiB
Markdown
# Add a new test binary
|
|
|
|
This page lists all the steps needed in order to add an `rtc_test` target to
|
|
WebRTC's BUILD.gn files and ensure the test binary will run on the presubmit and
|
|
postsubmit infrastructure.
|
|
|
|
1. While working on your CL, add an `rtc_test` target, with `testonly = true`,
|
|
and `../test:test_main` among its dependencies (`rtc_test` targets require
|
|
a `main()` function).
|
|
|
|
2. Add the newly created `rtc_test` target to the `group("default")` target in
|
|
the root [BUILD.gn](https://source.chromium.org/chromium/chromium/src/+/main:third_party/webrtc/BUILD.gn).
|
|
The target needs to be added within the `rtc_include_tests` section.
|
|
|
|
3. Add the name of the newly created `rtc_test` into
|
|
[infra/specs/gn_isolate_map.pyl](https://source.chromium.org/chromium/chromium/src/+/main:third_party/webrtc/infra/specs/gn_isolate_map.pyl).
|
|
|
|
4. Add the name of the newly created `rtc_test` into
|
|
[infra/specs/test_suites.pyl](https://source.chromium.org/chromium/chromium/src/+/main:third_party/webrtc/infra/specs/test_suites.pyl).
|
|
By default, you should add it to the `android_tests`, `desktop_tests` and
|
|
`ios_simulator_tests` sections.
|
|
|
|
5. Run the script
|
|
[infra/specs/generate_buildbot_json.py](https://source.chromium.org/chromium/chromium/src/+/main:third_party/webrtc/infra/specs/generate_buildbot_json.py)
|
|
(no arguments) to generate the JSON scripts based on the previsouly modified .pyl scripts.
|
|
|
|
6. Build, test, review and submit!
|
|
|
|
The bots will execute the new configs as part of the CQ. Inspect some logs to
|
|
verify that your test is in fact executed by the bots where you expect them to be.
|
|
|
|
The details of the (many) config files are described in
|
|
https://chromium.googlesource.com/chromium/src/testing/+/HEAD/buildbot/README.md.
|