TestEngineering/Performance/Raptor/Browsertime
< TestEngineering | Performance | Raptor
Jump to navigation
Jump to search
Browsertime is a harness for running performance tests, similar to Mozilla's Raptor testing framework. Browsertime is written in Node.js and uses Selenium WebDriver to drive multiple browsers including Chrome, Chrome for Android, Firefox, and (pending the resolution of Bug 1525126 and similar tickets) Firefox for Android and GeckoView-based vehicles.
Source code:
- Our current (vendored) Browsertime uses the Mozilla fork of the canonical repo
- In-tree: https://searchfox.org/mozilla-central/source/tools/browsertime and https://searchfox.org/mozilla-central/source/taskcluster/scripts/misc/browsertime.sh
Page-load tests
Running Locally
Prerequisites
- A local mozilla repository clone with a successful Firefox build completed
- Run
./mach browsertime --setup
⚠️ If ffmpeg is listed as FAIL, you might want to try this:
cd ~/.mozbuild
cd browsertime
cd bin
chmod +x ffmpeg ffplay ffprobe
Bugs which might further help are bug 1559168, bug 1559727, and bug 1574964, for starters
- If you plan on running Browsertime on Android, your Android device must already be set up (see more below in the Android section)
Running on Firefox Desktop
sdonner$ ./mach browsertime https://www.sitespeed.io --firefox.binaryPath '/Users/sdonner/moz_src/mozilla-unified/obj-x86_64-apple-darwin18.7.0/dist/Nightly.app/Contents/MacOS/firefox'
Running on Google Chrome
./mach browsertime https://www.sitespeed.io -b chrome
Running on Fenix/Firefox Preview
./mach browsertime --android --browser firefox --firefox.android.package org.mozilla.fenix.debug --firefox.android.activity org.mozilla.fenix.IntentReceiverActivity https://www.sitespeed.io
Running on the GeckoView Example app
./mach browsertime --android --browser firefox https://www.sitespeed.io
More Examples
Running Browsertime on Try
- Pending fix in bug 1566174
Bugs
60 Total; 5 Open (8.33%); 54 Resolved (90%); 1 Verified (1.67%);