Marionette¶
Marionette is the remote protocol that lets OOP programs communicate with, instrument, and control Gecko.
It can remotely control either the UI or the internal JavaScript of Gecko-based browsers, such as Firefox and Fennec. It can control both the chrome and the content document, giving a high level of control and ability to replicate user interaction. In addition to performing actions on the browser, Marionette can also ready properties and attributes of the DOM.
For users¶
See also:
- Documentation for Marionette Python client, which is used in-tree to write many kinds of Marionette-based tests.
- Documentation for Firefox Puppeteer, which is used to in-tree to write Firefox UI tests.
For developers¶
Bugs¶
Bugs are tracked in the Testing :: Marionette component.
Communication¶
The mailing list for discussion is tools-marionette@lists.mozilla.org (subscribe, archive). If you prefer real-time chat, there is often someone in the #ateam IRC channel on irc.mozilla.org. Don’t ask if you can ask a question, just ask, and please wait for an answer as we might not be in your timezone.