diff options
author | Daniel Baumann <daniel.baumann@progress-linux.org> | 2024-04-07 19:33:14 +0000 |
---|---|---|
committer | Daniel Baumann <daniel.baumann@progress-linux.org> | 2024-04-07 19:33:14 +0000 |
commit | 36d22d82aa202bb199967e9512281e9a53db42c9 (patch) | |
tree | 105e8c98ddea1c1e4784a60a5a6410fa416be2de /testing/performance/perftest_perfstats.js | |
parent | Initial commit. (diff) | |
download | firefox-esr-36d22d82aa202bb199967e9512281e9a53db42c9.tar.xz firefox-esr-36d22d82aa202bb199967e9512281e9a53db42c9.zip |
Adding upstream version 115.7.0esr.upstream/115.7.0esr
Signed-off-by: Daniel Baumann <daniel.baumann@progress-linux.org>
Diffstat (limited to 'testing/performance/perftest_perfstats.js')
-rw-r--r-- | testing/performance/perftest_perfstats.js | 52 |
1 files changed, 52 insertions, 0 deletions
diff --git a/testing/performance/perftest_perfstats.js b/testing/performance/perftest_perfstats.js new file mode 100644 index 0000000000..ad3e49eb79 --- /dev/null +++ b/testing/performance/perftest_perfstats.js @@ -0,0 +1,52 @@ +/* This Source Code Form is subject to the terms of the Mozilla Public + * License, v. 2.0. If a copy of the MPL was not distributed with this + * file, You can obtain one at http://mozilla.org/MPL/2.0/. */ + +const urls = [ + "https://accounts.google.com", + "https://cnn.com/ampstories/us/why-hurricane-michael-is-a-monster-unlike-any-other", + "https://stackoverflow.com/questions/927358/how-do-i-undo-the-most-recent-commits-in-git", + "https://expedia.com/Hotel-Search?destination=New+York%2C+New+York&latLong=40.756680%2C-73.986470®ionId=178293&startDate=&endDate=&rooms=1&_xpid=11905%7C1&adults=2", + "https://m.imdb.com/title/tt0083943/", +]; + +const idle_delay = 10000; + +async function test(context, commands) { + await commands.wait.byTime(idle_delay); + + await commands.measure.start(); + + // Cold + for (const url of urls) { + await commands.navigate(url); + await commands.wait.byTime(idle_delay); + } + + await commands.navigate("about:blank"); + await commands.wait.byTime(idle_delay); + + // Warm + for (const url of urls) { + await commands.navigate(url); + await commands.wait.byTime(idle_delay); + } + + return commands.measure.stop(); +} + +module.exports = { + test, + owner: "Performance Team", + name: "perfstats", + description: "Collect perfstats for the given site", + longDescription: ` + This test launches browsertime with the perfStats option (will collect low-overhead timings, see Bug 1553254). + The test currently runs a short user journey. A selection of popular sites are visited, first as cold pageloads, and then as warm. + `, + usage: ` + ./mach perftest --hook testing/performance/hooks_perfstats.py \ + testing/performance/perftest_perfstats.js --browsertime-iterations 10 \ + --perfherder-metrics name:HttpChannelCompletion_Cache name:HttpChannelCompletion_Network + `, +}; |