Auto-tools/Automation Development
Who are We?
This is the home of the QA Automation Services Team. This team is responsible for helping the QA teams on specific products excel at what they are doing using a number of tools.
Framework | Description |
Mozmill | A Framework for automating Gecko based applications from Firefox to Thunderbird. |
Selenium | A web browser automation framework controlling the content render-able part of the browser. |
Other | This could be anything from JMeter to automating native apps on mobile devices. |
Meetings
We have a public team project meetings each second week. If you want to join the meetings, please check the meetings page for details.
Team
The automation development team is a group of passionate and open minded people working on automation. We are spread around the world, but we have one collective goal to empower automation even more in the Mozilla project. If you want to get in contact with one of us please check the table below for more information.
Photo | Name | Location | IRC |
Henrik Skupin | Germany | whimboo | |
Dave Hunt | United Kingdom | davehunt | |
Rob Wood | Canada | rwood | |
Andreea Matei | Romania | AndreeaMatei | |
Andrei Eftimie | Romania | andrei_eftimie |
Projects
To be successful and to offer the best support for other teams, the Automation Services team is working on different projects concurrently. Some of those projects can be accomplished in a short time while others will take longer, even several months. The prioritized projects reflect the most important projects in the current quarter and include the appropriate tasks which have to be fulfilled during that time. Other active projects have lower priority.
If you are interested in already finished projects, check our projects archive.
Prioritized Projects
Project | Frameworks | Description |
Open Web Applications | TBD | Implemention of necessary APIs and support the addition of tests to execute automated tests for web apps in Firefox |
Documentation | None | Establish the new team presence across websites (QMO, Wiki, MDC) and improve the documentation to increase collaboration with the test automation community |
Infrastructure | None | Investigation and documentation of the shared test infrastructure and blog Q4 implementation goals on Planet |
Selenium TestGrid | Selenium | Upgrade the test grid to work with the final version of Selenium 2 and add mobile for web testing |
EnduranceTests | Mozmill | Improve coverage of Endurance tests for real world use-case scenarios and add additional metrics to support the memshrink project for Firefox |
Other Projects
Project | Description |
Automated Test Frameworks
Selenium
Mozmill (Firefox) Test Framework
About Mozmill
Mozmill is a Software Automation Test Framework that has been designed to test the Firefox Browser. The test suites are written in a domain independent language (javascript), which then uses python in the backend to communicate with a local socket in the browser. There are several pieces required to run Mozmill tests. The simplest / easiest way to get up and writing / running mozmill tests is to install mozmill crowd. This extension allows you to run mozmill tests, and get familiar with writing test cases. After this initial you will be looking for something more complex, try installing Mozmill, and the corresponding test suite so you can run tests from the command line. *If you are able to get this up and running, Congratulations.. this is how tests are run in our continuous integration environment*
How to Install
Install Mozmill Crowd and get familiar with running automated tests Mozmill Crowd
Advanced Install
Basically you need to have python 2.6 running, on linux this is fairly simple, on mac it may require some work. The eternal struggle on a mac is upgrading / installing linux based applications (fink, mac ports, have grown up to solve this problem) We like Homebrew, as the installs are non-destructive to the operating system, and localized to specific users. Without further a do, here are some instructions to get python 2.6 running.
Mac:
Install Brew - Brew Update Python 2.6 Formula brew create git://gist.github.com/743034 name it python26 brew install python26 (Do not run brew install python, as it will install python 2.7.1)
Linux:
Install Pip with the following command sudo easy_install pip sudo pip install mercurial sudo pip install virtualenvwrapper update your ~/.bash_profile export WORKON_HOME=$HOME/.virtualenvs export PIP_VIRTUALENV_BASE=$WORKON_HOME source /usr/local/bin/virtualenvwrapper.sh
To create a new virtualenv you would do mkvirtualenv projecta –no-site-packages. “projecta” would be the name of the project you are using
workon projecta install libraries needed in the relevant virtualenv so that you don’t pollute your environment. If something goes wrong you can delete the virtualenv without breaking your machine
The basic install process is well documented on : Mozilla Developer
Install the Mozmill Tests Get the tests out of the repository - Mozmill Tests
Team Presence (Documentation)
Infrastructure Investigation
Selenium Grid 2
Endurance Tests
New Members
All new members to the team can find all the details about getting setup. Details on what accounts, what mailing lists, etc can be found on the Here.