gecko/testing/marionette/client
Walter Chen bd8eece389 Bug 816514 - [B2G] Using marionette in Keyboard frame, causing lose of focus, r=jgriffin
Adding focus parameters and logics for marionette server and client
2012-12-17 17:45:28 +08:00
..
marionette Bug 816514 - [B2G] Using marionette in Keyboard frame, causing lose of focus, r=jgriffin 2012-12-17 17:45:28 +08:00
MANIFEST.in Bug 812579 - Fix typo in Marionette's MANIFEST.in, r=atrain 2012-11-16 12:53:32 -08:00
README.md Bug 756233: Removing Selenium proxy from marionette r=jgriffin 2012-05-22 07:09:46 -07:00
setup.py Bug 821018 - Fix XML output when tests have been skipped, r=jgriffin 2012-12-12 15:29:47 -08:00

Marionette Client

Marionette is a Mozilla project to enable remote automation in Gecko-based projects, including desktop Firefox, mobile Firefox, and Boot-to-Gecko.

It utilizes the remote-debugger inside Gecko for the transport layer of the Marionette server. The commands the Marionette server will eventually implement are based on Selenium's JSON Wire Protocol, although not all commands are presently implemented, and additional commands will likely be added.

Package Files

  • client.py: This is the Marionette socket client; it speaks the same socket protocol as the Gecko remote debugger.
  • marionette.py: The Marionette client. This uses client.py to communicate with a server that speaks the Gecko remote debugger protocol. This allows Selenium tests to utilize Marionette.
  • testserver.py: A socket server which mimics the remote debugger in Gecko, and can be used to test pieces of the Marionette client.
  • test_protocol.py: Tests the Marionette JSON Protocol by using testserver.py.

Installation

You'll need the ManifestDestiny and MozHttpd packages from Mozbase:

git clone git://github.com/mozilla/mozbase.git
cd mozbase
python setup_development.py

Other than that, there are no special requirements.

Writing and Running Tests Using Marionette

See Writing Marionette tests, and Running Marionette tests.