QA/Mozmill Test Automation/Update Tests: Difference between revisions

From MozillaWiki
Jump to navigation Jump to search
No edit summary
Line 38: Line 38:
The base of the complete project is definitely the Python script which has to be used to run all the existent software update tests. Once it has been called it should automatically execute the steps below:
The base of the complete project is definitely the Python script which has to be used to run all the existent software update tests. Once it has been called it should automatically execute the steps below:


1. Install a build
* Install a build
2. Run the partial or complete software update tests
* Run the partial or complete software update tests
3. Reinstall the build
* Reinstall the build
4. Run the fallback software update tests
* Run the fallback software update tests
5. Reinstall the build
* Reinstall the build
6. Run background software update tests
* Run background software update tests
7. Uninstall the build
* Uninstall the build


A script with this feature set has already been created on {{bug|504653}} and is able to execute all the steps except step 6. The reason is that we do not have any automated tests for background software updates yet.
A script with this feature set has already been created on {{bug|504653}} and is able to execute all the steps except step 6. The reason is that we do not have any automated tests for background software updates yet.
Line 51: Line 51:
To easily setup a machine to run automated software update tests a wrapper script is necessary, which has to prepare the environment before the tests get run. Such a script does not exist at the moment and has to be written. The following requirements have to be met:
To easily setup a machine to run automated software update tests a wrapper script is necessary, which has to prepare the environment before the tests get run. Such a script does not exist at the moment and has to be written. The following requirements have to be met:


1. Setup a system with the virtual Python environment
* Setup a system with the virtual Python environment
2. Download all requested builds from the FTP server
* Download all requested builds from the FTP server
3. Execute the software update script for all downloaded builds
* Execute the software update script for all downloaded builds
4. Clean-up the system, which includes the downloaded builds and the prepared virtual environment.
* Clean-up the system (downloaded builds and the prepared virtual environment)


If you want to help please contact Henrik Skupin.
If you want to help please contact Henrik Skupin.

Revision as of 19:45, 28 April 2010

Overview

Lead: Henrik Skupin
Co-workers: n/a
Dates: No specific dates set
Status: Needs assignee
Repository Location: Update Tests
Update Script
Tracking Bug: bug 562352

Excerpt

Mozilla provides updates for each new version of Firefox, which makes the whole update process simple and fast. To ensure the best quality for our users, QA constantly runs software update tests for security and major releases. Those tests are complex and time consuming and should be completely run automated in the future.

This project covers all the work which is necessary to create an environment for automated update testing, but also the implementation of needed tests.

Project Details

The complete project can be divided into 3 different sub projects, which can mostly be run in parallel:

  • Creation and enhancement of the software update script and dependent scripts
  • Creation of an environment to run automated software update tests
  • Creation of software update tests based on existing Litmus tests

Software Update Script

The base of the complete project is definitely the Python script which has to be used to run all the existent software update tests. Once it has been called it should automatically execute the steps below:

  • Install a build
  • Run the partial or complete software update tests
  • Reinstall the build
  • Run the fallback software update tests
  • Reinstall the build
  • Run background software update tests
  • Uninstall the build

A script with this feature set has already been created on bug 504653 and is able to execute all the steps except step 6. The reason is that we do not have any automated tests for background software updates yet.

Environment for Automated Tests

To easily setup a machine to run automated software update tests a wrapper script is necessary, which has to prepare the environment before the tests get run. Such a script does not exist at the moment and has to be written. The following requirements have to be met:

  • Setup a system with the virtual Python environment
  • Download all requested builds from the FTP server
  • Execute the software update script for all downloaded builds
  • Clean-up the system (downloaded builds and the prepared virtual environment)

If you want to help please contact Henrik Skupin.

Creation of Software Update Tests

The creation of the software update tests is basically the same work as we do for all the other Mozmill tests. We focus on existing Litmus tests to implement the tests.

If you want to help please contact Henrik Skupin.