TestEngineering/Performance/Talos/Development

From MozillaWiki
Jump to: navigation, search

Environment

Warning signWarning: Talos currently requires Python 2.7

Prerequisites: Local clone of mozilla-central and a successful mozilla-central Firefox build completed.

Common Issues

This section outlines some common issues that others have come across.

  • The mercurial JS formatting extension may badly reformat the code and cause failures.

Testing your patch locally

Testing locally involves running some subset of the Talos tests on desktop and possibly mobile. Obviously not all permutations of tests and the ways of running them can be tried, so common sense should be used as to what is run. You may also want to run the Talos harness tests.
[TODO] document how to run Talos harness tests

You should tailor your choice of tests to pick those that cover what you've changed programmatically, but in general you should probably run at least one startup test and one pageloader test. A good baseline might be the 'tresize' and 'tsvgx' test suites.

Warning signWarning: The following is currently broken. Once bug 1573429 is resolved we can update this to use mach talos-test

Run the tests from mozilla-central/testing/talos (with the venv activated, as noted above):

 talos --develop --executablePath pathtofirefox --activeTests tart

The --develop option indicates to run in develop mode and store the results in local.json + local.out.

The --executablePath option tells Talos where the firefox installation we want to run is located (i.e. '~/mozilla/objdir/dist/bin/firefox' or whatever the full path is to your firefox executable that will be running the tests).

The --activeTests argument provides a list of tests we want to run (if running multiple tests, separate each test name with ':').

For a list of complete options:

 talos --help

Testing your patch on try

Just push your Talos patch to the try server. See TestEngineering/Performance/Talos/Running#Try_server.