TestEngineering/Performance/Raptor/Browsertime: Difference between revisions

(Update test name.)
 
(3 intermediate revisions by 3 users not shown)
Line 1: Line 1:
#REDIRECT [[TestEngineering/Performance/Raptor#WebExtension]]
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 Firefox for Android and GeckoView-based vehicles.
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 Firefox for Android and GeckoView-based vehicles.


Line 10: Line 12:


=== Setup ===
=== Setup ===
Note that if you are running Raptor-Browsertime then it will get installed automatically and will also update itself once {{bug|1686064}} lands.
'''Note that if you are running Raptor-Browsertime then it will get installed automatically and also updates itself.'''


* Run <code>./mach browsertime --setup</code>
* Run <code>./mach browsertime --setup</code>
Line 43: Line 45:


* Raptor-Browsertime (recommended):<br>
* Raptor-Browsertime (recommended):<br>
  ./mach raptor --browsertime -t google-search --no-conditioned-profile
  ./mach raptor --browsertime -t google-search
* Browsertime-"native":<br>
* Browsertime-"native":<br>
   ./mach browsertime https://www.sitespeed.io --firefox.binaryPath '/Users/{userdir}/moz_src/mozilla-unified/obj-x86_64-apple-darwin18.7.0/dist/Nightly.app/Contents/MacOS/firefox'
   ./mach browsertime https://www.sitespeed.io --firefox.binaryPath '/Users/{userdir}/moz_src/mozilla-unified/obj-x86_64-apple-darwin18.7.0/dist/Nightly.app/Contents/MacOS/firefox'
Line 54: Line 56:
Running on Raptor-Browsertime (recommended):
Running on Raptor-Browsertime (recommended):
* Running on Fenix
* Running on Fenix
   ./mach raptor --browsertime -t amazon --no-conditioned-profile --app fenix --binary org.mozilla.fenix
   ./mach raptor --browsertime -t amazon --app fenix --binary org.mozilla.fenix
* Running on Geckoview
* Running on Geckoview
   ./mach raptor --browsertime -t amazon --no-conditioned-profile --app geckoview --binary org.mozilla.geckoview_example
   ./mach raptor --browsertime -t amazon --app geckoview --binary org.mozilla.geckoview_example


Running on vanilla Browsertime:
Running on vanilla Browsertime:
Line 79: Line 81:


Or for Raptor-Browsertime (use <code>chrome</code> for desktop, and <code>chrome-m</code> for mobile):
Or for Raptor-Browsertime (use <code>chrome</code> for desktop, and <code>chrome-m</code> for mobile):
   ./mach raptor --browsertime -t amazon --app chrome --no-conditioned-profile --browsertime-chromedriver <PATH/TO/CHROMEDRIVER>
   ./mach raptor --browsertime -t amazon --app chrome --browsertime-chromedriver <PATH/TO/CHROMEDRIVER>


=== More Examples ===
=== More Examples ===
Line 102: Line 104:


To run gecko profiling using Raptor-Browsertime you can add the <code>--gecko-profile</code> flag to any command and you will get profiles from the test (with the profiler page opening in the browser automatically). This method also performs symbolication for you. For example:
To run gecko profiling using Raptor-Browsertime you can add the <code>--gecko-profile</code> flag to any command and you will get profiles from the test (with the profiler page opening in the browser automatically). This method also performs symbolication for you. For example:
   ./mach raptor --browsertime -t amazon --no-conditioned-profile --gecko-profile
   ./mach raptor --browsertime -t amazon --gecko-profile


Note that vanilla Browsertime does support Gecko Profiling but '''it does not symbolicate the profiles''' so it is '''not recommended''' to use for debugging performance regressions/improvements.
Note that vanilla Browsertime does support Gecko Profiling but '''it does not symbolicate the profiles''' so it is '''not recommended''' to use for debugging performance regressions/improvements.
342

edits