Mozmill is a UI Automation framework for Mozilla apps like Firefox and Thunderbird. It's both an addon and a Python command-line tool. The addon provides an IDE for writing and running the JavaScript tests and the Python package provides a mechanism for running the tests from the command line as well as providing a way to test restarting the application.
Install the command-line client via either setuptools or pip (detailed instructions): pip install mozmill
To work with the development version of Mozmill, check out the code from the Github repo: git clone http://github.com/mozautomation/mozmill.git cd mozmill ./setup_development.sh
After installing the Python package you can run Mozmill with the mozmill
command:
mozmill -t ~/tests/testBookmarks.js
Mozmill uses several Python packages:
Runs Mozmill
Creates and manages user profiles for Mozilla apps: from mozprofile import FirefoxProfile
# create new profile to pass to mozmill/mozrunner
profile = FirefoxProfile(addons=["adblock.xpi"])
Handles start/stop automation of Mozilla applications: from mozrunner import FirefoxRunner
# start Firefox on a new profile
runner = FirefoxRunner()
runner.start()
Generic OS process management.
Python to JavaScript bridge used by Mozmill to communicate test run information.