gecko-dev/testing/marionette/harness
Henrik Skupin 7aad85995b Bug 1500242 - [marionette] Obey the extended shutdown timeout for Firefox ASAN builds. r=ato
Firefox uses different shutdown timeouts for the terminator thread
depending on the build type. For opt/debug builds this will be 60s,
while for ASAN builds 180s are used.

Currently Marionette only takes the 60s into account, and always
kills the binary after 70s if a shutdown hasn't happened by that
time. This actually prevents the background hang monitor to kill
Firefox for ASAN builds, and to report a meaningful crash report
for the shutdown hang.

To inform clients about the correct shutdown timeout, a new vendor
specific capability with the name `moz:shutdownTimeout` is used as
part of the new session capabilities.

Depends on D9227

Differential Revision: https://phabricator.services.mozilla.com/D9228

--HG--
extra : moz-landing-system : lando
2018-10-19 11:52:42 +00:00
..
marionette_harness Bug 1500242 - [marionette] Obey the extended shutdown timeout for Firefox ASAN builds. r=ato 2018-10-19 11:52:42 +00:00
.flake8 Bug 1395126 - Support cascading configuration for flake8, r=bc 2017-08-29 17:32:31 -04:00
MANIFEST.in
README.rst
requirements.txt Bug 1488468 - Bump wptserve in marionette_requirements.txt to 2.0.0; r=davehunt 2018-10-05 19:16:45 +00:00
setup.py Bug 1407763 - Enable py2 and py3 compat linters for testing/marionette. r=ahal 2018-01-17 16:14:43 +01:00

README.rst

marionette-harness
==================

Marionette is an automation driver for Mozilla's Gecko engine. It can remotely
control either the UI or the internal JavaScript of a Gecko platform, such as
Firefox. It can control both the chrome (i.e. menus and functions) or the
content (the webpage loaded inside the browsing context), giving a high level
of control and ability to replicate user actions. In addition to performing
actions on the browser, Marionette can also read the properties and attributes
of the DOM.

The marionette_harness package contains the test runner for Marionette, and
allows you to run automated tests written in Python for Gecko based
applications. Therefore it offers the necessary testcase classes, which are
based on the unittest framework.

For more information and the repository please checkout:

- home and docs: https://developer.mozilla.org/en-US/docs/Mozilla/QA/Marionette


Example
-------

The following command will run the tests as specified via a manifest file, or
test path, or test folder in Firefox:

    marionette --binary %path_to_firefox% [manifest_file | test_file | test_folder]

To get an overview about all possible option run `marionette --help`.