gecko-dev/remote/doc/Testing.md

1.4 KiB

Testing

The remote agent has unit- and functional tests located under remote/test/{unit,browser}.

You may run all the tests under a particular subfolder like this:

% ./mach test remote

Unit tests

Because tests are run in parallel and xpcshell itself is quite chatty, it can sometimes be useful to run the tests in sequence:

% ./mach xcpshell-test --sequential remote/test/unit/test_Assert.js

The unit tests will appear as part of the X (for xpcshell) jobs on Treeherder.

Functional tests

We also have a set of functional browser chrome tests located under remote/test/browser:

% ./mach mochitest remote/test/browser/browser_cdp.js

The functional tests will appear under the M (for mochitest) category in the bc (browser-chrome) jobs on Treeherder.

As the functional tests will sporadically pop up new Firefox application windows, a helpful tip is to run them in headless mode:

% ./mach mochitest --headless remote/test/browser

The --headless flag is equivalent to setting the MOZ_HEADLESS environment variable. You can additionally use MOZ_HEADLESS_WIDTH and MOZ_HEADLESS_HEIGHT to control the dimensions of the virtual display.