testing/marionette/client/README.md

Thu, 22 Jan 2015 13:21:57 +0100

author
Michael Schloh von Bennewitz <michael@schloh.com>
date
Thu, 22 Jan 2015 13:21:57 +0100
branch
TOR_BUG_9701
changeset 15
b8a032363ba2
permissions
-rw-r--r--

Incorporate requested changes from Mozilla in review:
https://bugzilla.mozilla.org/show_bug.cgi?id=1123480#c6

michael@0 1 <!-- This Source Code Form is subject to the terms of the Mozilla Public
michael@0 2 - License, v. 2.0. If a copy of the MPL was not distributed with this
michael@0 3 - file, You can obtain one at http://mozilla.org/MPL/2.0/. -->
michael@0 4
michael@0 5 # Marionette Client
michael@0 6
michael@0 7 [Marionette](https://developer.mozilla.org/en/Marionette) is a
michael@0 8 Mozilla project to enable remote automation in Gecko-based projects,
michael@0 9 including desktop Firefox, mobile Firefox, and Boot-to-Gecko.
michael@0 10
michael@0 11 It utilizes the [remote-debugger](https://wiki.mozilla.org/Platform/JSDebugv2)
michael@0 12 inside Gecko for the transport layer of the Marionette server. The commands
michael@0 13 the Marionette server will eventually implement are based on
michael@0 14 Selenium's [JSON Wire Protocol](http://code.google.com/p/selenium/wiki/JsonWireProtocol),
michael@0 15 although not all commands are presently implemented, and additional commands
michael@0 16 will likely be added.
michael@0 17
michael@0 18 ## Package Files
michael@0 19
michael@0 20 - client.py: This is the Marionette socket client; it speaks the same
michael@0 21 socket protocol as the Gecko remote debugger.
michael@0 22 - marionette.py: The Marionette client. This uses client.py to communicate
michael@0 23 with a server that speaks the Gecko remote debugger protocol.
michael@0 24 This allows Selenium tests to utilize Marionette.
michael@0 25 - testserver.py: A socket server which mimics the remote debugger in
michael@0 26 Gecko, and can be used to test pieces of the Marionette client.
michael@0 27 - test_protocol.py: Tests the Marionette JSON Protocol by using testserver.py.
michael@0 28
michael@0 29 ## Installation
michael@0 30
michael@0 31 You'll need the ManifestDestiny and MozHttpd packages from Mozbase:
michael@0 32
michael@0 33 git clone git://github.com/mozilla/mozbase.git
michael@0 34 cd mozbase
michael@0 35 python setup_development.py
michael@0 36
michael@0 37 Other than that, there are no special requirements.
michael@0 38
michael@0 39
michael@0 40 ## Writing and Running Tests Using Marionette
michael@0 41
michael@0 42 See [Writing Marionette tests](https://developer.mozilla.org/en/Marionette/Tests),
michael@0 43 and [Running Marionette tests](https://developer.mozilla.org/en/Marionette/Running_Tests).
michael@0 44

mercurial