QA/Weave Test Plan

From MozillaWiki
< QA
Jump to: navigation, search
Weave Test Plan

Overview

Weave Sync is an extension that encrypts and securely synchronizes the Firefox experience across multiple browsers, so that your desktop, laptop, and mobile phone can all work together.

Testing Weave will present some unique challenges in that data from many areas of the browser are to be stored and synced securely across multiple browser versions and multiple operating systems, including mobile.

Mozilla Labs - Weave Project Page
Weave Roadmap

Weave Builds

Test Strategy

The Strategy for testing weave is evolving over time since it is a new product with a different kind of roadmap that Mozilla is accustomed to.  We will initially approach the major releases with this strategy:

  1. Weave Client Extension Testing (Lead: Tracy Walker)
    • This involves black box execution directly on the extension, testing the features and usage of the operation of the client.   Involves data syncing and cross browsers and OS platform support.   Will heavily include Fennec integration. Testcases will be tracked in the weave testrun on litmus.mozilla.org
  2. Weave Client Load Testing (Lead: Matt Evans)
    • This involves a collective approach to organizing weave users around the globe to create a load generation through the client to generate network traffic to production servers. Still need to define measuring performance evaluation and instrumentation on what a successful network load would be. Likely outsourced.
  3. Weave Thick Client Server Testing (CrossWeave) (Lead: Jonathan Griffin)
    • A Test Extension that works with the Weave extension to perform client/server testing. Does not touch the Weave UI. Use Cases will include:
      • Data Driven Testing
      • Parametrize user credentials (so that it can be cloned out to X vms for cloud testing)
      • Use multiple profiles on the same machine (so that it can be easily cloned for testing and can be easily setup and run by hand by developers).

Areas Covered

  1. Client testing
  2. Client Side Load Generation
  3. Thick Client load testing

Areas not covered

  1. Server/back end
    • Weave server test script - run on changes and prior to pushes to stage.
    • Current implementation of server side tests include unit tests against the sync API.   There are plans for Weave 1.3 to include the following:
      • Registration API unit tests
      • Load Balancing tests
      • Failover/recovery tests?
      • others...  See Mike hanson and Tobi Elliot
  2. Unit Test Frameworks
    • A unit test framework will hook into tinderbox that includes nightly runs of unit tests. This will be handled by development and releng. Testplan in development is found here.

Schedule Scoping

Bugs

Sync on Mobile

Integrated Sync for Fennec

Fennec sync will contain its own integrated sync options built directly into the preferences. It will support syncing bookmarks, history, tabs, and passwords. Fennec sync will support bi-directional sync.

Firefox Sync testplan

Firefox Home for Iphone

Firefox Home (aka Weave Sync on Iphone) will be a one way sync application that will currently support syncing of bookmarks, tabs, and history. It's being developed off the Firefox Sync 1.3 client platform, and will utilize the same production servers that Firefox Sync 1.3.x client is supporting.

Fennec Home testplan