Run perf tests assertion only in the "quick" perf test mode.

Perf tests upload its results to CPD.
With the current design, an assertion failure in one test prevents the upload for all the tests.
https://ci.chromium.org/ui/p/webrtc/builders/perf/Perf%20Mac%20M1%20Arm64%2012/1719/overview

The "quick" perf test mode is made to run on regular CQ/CI bots without any metrics upload so it's fine to have an assertion failure there.

Bug: b/264502081
Change-Id: I22e8e8b7ce317f43297cb8837694e420cd80613d
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/290571
Commit-Queue: Jeremy Leconte <jleconte@google.com>
Reviewed-by: Harald Alvestrand <hta@webrtc.org>
Reviewed-by: Christoffer Jansson <jansson@google.com>
Cr-Commit-Position: refs/heads/main@{#39063}
This commit is contained in:
Jeremy Leconte 2023-01-11 08:37:34 +01:00 committed by WebRTC LUCI CQ
parent 69ea6afa35
commit 7b96ebbc56

View File

@ -1138,6 +1138,8 @@ void CallPerfTest::TestEncodeFramerate(VideoEncoderFactory* encoder_factory,
}
void VerifyStats() const {
const bool quick_perf_test =
field_trial::IsEnabled("WebRTC-QuickPerfTest");
double input_fps = 0.0;
for (const auto& configured_framerate : configured_framerates_) {
input_fps = std::max(configured_framerate.second, input_fps);
@ -1153,7 +1155,7 @@ void CallPerfTest::TestEncodeFramerate(VideoEncoderFactory* encoder_factory,
double average_fps = values.GetAverage();
uint32_t ssrc = encode_frame_rate_list.first;
double expected_fps = configured_framerates_.find(ssrc)->second;
if (expected_fps != input_fps)
if (quick_perf_test && expected_fps != input_fps)
EXPECT_NEAR(expected_fps, average_fps, kAllowedFpsDiff);
}
}