Skip to content
DEPRECATED project - Check the Marionette framework instead
JavaScript Python Other
Failed to load latest commit information.
jsbridge Bug 1067939 - JSBridge and Mozmill broken due to 'let' changes in bug… Sep 16, 2014
mozmill Bug 1134984 - getApplicationDetails() fails because of non-serializab… Feb 20, 2015
mutt
.gitignore Bug 661436 - update gitignore now that we compile things;r=harth Jun 2, 2011
README.md Bug 933053 - Remove all mentions of addon in README files. r=dhunt Oct 31, 2013
carton-mozmill.py Bug 859648 - Missing MPL 2.0 copyright headers in numerous files. r=h… Apr 19, 2013
docs.manifest update documentation reflecting package move, https://bugzilla.mozill… Oct 20, 2011
documentation.txt Bug 776587 - Update files for move of mozautomation/mozmill repositor… Dec 14, 2012
setup_development.py
versionbump.py Bug 859648 - Missing MPL 2.0 copyright headers in numerous files. r=h… Apr 19, 2013

README.md

Automation + Tools Mozmill Repository

Mozmill is a UI Automation framework for Mozilla apps like Firefox and Thunderbird. It takes the form of a Python command-line tool.

The Mozmill repository contains Mozmill and supporting code which is also used for MozBase and other Mozilla automation efforts.

Installation

To work with the development version of Mozmill or its utilities, check out the code from the Github repo:

$ git clone git://github.com/mozilla/mozmill.git
$ cd mozmill
$ virtualenv venv
$ source venv/bin/activate
$ ./setup_development.py

Repository Contents

The Mozmill repository contains python packages for Mozmill and MozBase.

In addition, several repository support files exist for repository documentation and management.

Python Packages

The mozmill repository contains several Python packages:

  • jsbridge : python to JavaScript bridge used by Mozmill to communicate test run information.
  • mozmill : Mozilla test harness and event dispatcher
  • mutt : test framework for Mozmill and related utilities

Each of these packages contains a README.md file in markdown syntax giving in-depth information on their utility. These packages all make use of setuptools for installation. It is highly recommended that you use virtualenv to keep your python environment separate from your system packages. In this way, you can keep multiple versions of packages around without worrying about cross-contamination and versioning woes.

Repository Management

In addition to the python packages, several files exist at the top level of the repository to help keep repository management sane:

  • README.md : documents what the Mozmill repository is all about; the content you're reading now

  • setup_development.py : a python script that will install all python packages in the Mozmill repository in development mode, respecting dependency order. This means that code changes will be respected the next time the python interpreter is invoked. Using virtualenv, checking out the git repository, and invoking setup_development.py with the virtualenv's copy of python is the most robust way of deploying the software

  • documentation.txt : the documentation strategy for packages in the Mozmill repository

  • docs.manifest : manifest of documentation for mirroring to MDN using the document-it script (not included in the repository). See documentation.txt for details

  • versionbump.py : bump the version of mozmill. Use python versionbump.py --help for help

Help and Contributing

Mozmill and the Mozmill repository are maintained by the Mozilla Automation and Testing Team.

Please file issues on github, bugzilla, or join the #ateam or #mozmill channel on irc://irc.mozilla.org/ .

Something went wrong with that request. Please try again.