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.
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
The Mozmill repository contains python packages for Mozmill and MozBase.
In addition, several repository support files exist for repository documentation and management.
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.
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
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/ .