0
Files
src/components/page_load_metrics
Hao Liu 3b7a99db0f Reland "Add test cases for and a missing piece of the wireup of the soft nav LCP UKM reporting"
This is a reland of commit b4369778d7

The investigation and fix of the failure is explained here
https://docs.google.com/document/d/1sqgeLWmv08VzT9zU9CuCtzsbFEF_IZwNcOuMaBLrmM4/edit?usp=sharing

Original change's description:
> Add test cases for and a missing piece of the wireup of the soft nav LCP UKM reporting
>
> This CL adds browser test coverage for soft nav LCP UKM recording.
> Each field of LCP details is verified to be reported. This test is a
> parameterized test with the SoftNavigationHeuristics flag being the
> variable. If the SoftNavigationHeuristics flag is on, the LCP timing
> values are also verified against the web exposed value.
> The soft nav start time value + soft nav lcp value should be equal to
> the exposed soft nav lcp value, as the soft nav lcp is relative to
> the soft nav start time.
>
> Also, in previous wiring up for the soft nav lcp discovery time, one
> piece was missed out. It is detected by the test and added in
> this CL.
>
> Bug: 1455156
> Change-Id: I95c679d4ebbfcdcac8ec93e88c26d6304a7e40da
> Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/4681836
> Commit-Queue: Hao Liu <haoliuk@chromium.org>
> Reviewed-by: Yoav Weiss <yoavweiss@chromium.org>
> Cr-Commit-Position: refs/heads/main@{#1169879}

Bug: 1455156
Change-Id: I4395653b5c6987fb3b029d7581af2a08ffe0cf04
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/4683970
Reviewed-by: Yoav Weiss <yoavweiss@chromium.org>
Commit-Queue: Hao Liu <haoliuk@chromium.org>
Cr-Commit-Position: refs/heads/main@{#1173562}
2023-07-21 16:23:10 +00:00
..
2023-07-07 13:55:56 +00:00

The page load metrics subsystem captures and records UMA metrics related to
page loading. This includes page timing metrics, such as time to first
paint, as well as page interaction metrics, such as number of page loads
aborted before first paint.

The page load metrics subsystem is shared by Chrome and WebView, but not
supported on iOS, as it requires hooks into Blink for page timing metrics that
are unavailable on iOS.

This component has the following structure:
- components/page_load_metrics/browser: browser process code
- components/page_load_metrics/common/: code shared by browser and renderer, such
                                    as IPC messages
- components/page_load_metrics/renderer : renderer process code

For additional information on this subsystem, see
https://docs.google.com/document/d/1HJsJ5W2H_3qRdqPAUgAEo10AF8gXPTXZLUET4X4_sII/edit