blob: 11fc982ef2f59f020d3ac8cf94fb402fbceed1f6 [file] [log] [blame] [view]
Dominic Mazzonib11c82d2018-08-29 17:01:581# Accessibility Performance Measurements
2
Aran Gilman9f5df0d2019-04-22 15:47:093Accessibility support can have a negative impact on performance, so it is
4important to test for regressions and to improve performance over time. This can
5be done with Chromium's performance testing framework,
6[Telemetry](https://chromium.googlesource.com/catapult/+/HEAD/telemetry/README.md).
Dominic Mazzonib11c82d2018-08-29 17:01:587
Aran Gilman9f5df0d2019-04-22 15:47:098The metrics for accessibility are defined in
9[third_party/catapult/tracing/tracing/metrics/accessibility_metric.html](https://cs.chromium.org/chromium/src/third_party/catapult/tracing/tracing/metrics/accessibility_metric.html).
Dominic Mazzonib11c82d2018-08-29 17:01:5810
11## Stories
12
Aran Gilman9f5df0d2019-04-22 15:47:0913A story is a url to load and actions to take on that page.
Dominic Mazzonib11c82d2018-08-29 17:01:5814
Aran Gilman9f5df0d2019-04-22 15:47:0915Accessibility stories are defined in
16[tools/perf/page_sets/system_health/accessibility_stories.py](https://cs.chromium.org/chromium/src/tools/perf/page_sets/system_health/accessibility_stories.py).
17If a particular web page seems slow, you may add a new story here to track its
18performance.
Dominic Mazzonib11c82d2018-08-29 17:01:5819
Aran Gilman9f5df0d2019-04-22 15:47:0920### Running stories from the command line
Dominic Mazzonib11c82d2018-08-29 17:01:5821
Aran Gilman9f5df0d2019-04-22 15:47:0922To run all accessibility stories locally using the currently installed Canary
23browser:
Dominic Mazzonib11c82d2018-08-29 17:01:5824
Aran Gilman9f5df0d2019-04-22 15:47:0925```shell
26tools/perf/run_benchmark system_health.common_desktop \
27 --story-filter="accessibility.*" \
28 --browser canary
29```
Dominic Mazzonib11c82d2018-08-29 17:01:5830
Dominic Mazzoni98f103ba2019-01-16 18:04:0731To run the same set of tests on your own compiled version of Chrome:
32
Aran Gilman9f5df0d2019-04-22 15:47:0933```shell
34tools/perf/run_benchmark system_health.common_desktop \
35 --story-filter="accessibility.*" \
36 --browser=exact \
37 --browser-executable=out/Release/chrome
38```
Dominic Mazzoni98f103ba2019-01-16 18:04:0739
Aran Gilman9f5df0d2019-04-22 15:47:0940For more information, see the
Mark Schillacic2f79e182021-10-26 18:26:4941[Telemetry documentation](https://github.com/catapult-project/catapult/blob/main/telemetry/docs/run_benchmarks_locally.md)
Aran Gilman9f5df0d2019-04-22 15:47:0942or command-line help for tools/perf/run_benchmark.
Dominic Mazzonib11c82d2018-08-29 17:01:5843
Aran Gilman9f5df0d2019-04-22 15:47:0944### Capture web page replay for new or modified stories
Dominic Mazzonib11c82d2018-08-29 17:01:5845
Aran Gilman9f5df0d2019-04-22 15:47:0946You should capture web page replay information whenever you add or modify a
Ryan Heisef7805bb2022-03-16 00:18:3647story. To do so, see [here](../../../tools/perf/recording_benchmarks.md).
Dominic Mazzonib11c82d2018-08-29 17:01:5848
49## Blink Perf
50
Aran Gilman9f5df0d2019-04-22 15:47:0951Blink perf tests are microbenchmarks that track the performance of a small
52function or operation in isolation. You can find these tests in
53[third_party/blink/perf_tests/accessibility/](https://cs.chromium.org/chromium/src/third_party/blink/perf_tests/accessibility/).
Dominic Mazzonib11c82d2018-08-29 17:01:5854
Aran Gilman9f5df0d2019-04-22 15:47:0955To run these tests locally on your own compiled Chrome:
Dominic Mazzonib11c82d2018-08-29 17:01:5856
Aran Gilman9f5df0d2019-04-22 15:47:0957```shell
58tools/perf/run_benchmark blink_perf.accessibility \
59 --browser=exact \
60 --browser-executable=out/Release/chrome
61```
Dominic Mazzoni98f103ba2019-01-16 18:04:0762
Dominic Mazzonib11c82d2018-08-29 17:01:5863## Results
64
Dominic Mazzonifd246a02018-10-26 18:33:1265The results can be found at
66[https://chromeperf.appspot.com](chromeperf.appspot.com).
Dominic Mazzonib11c82d2018-08-29 17:01:5867
Aran Gilman9f5df0d2019-04-22 15:47:0968## Google-internal Info
Dominic Mazzonib11c82d2018-08-29 17:01:5869
Aran Gilman9f5df0d2019-04-22 15:47:0970More information on analytics and performance, including some additional
71Google-internal resources, can be found at
72[go/chrome-a11y/resources/analytics-performance](http://go/chrome-a11y/resources/analytics-performance).