QA/Activity Stream (system add-on)

From MozillaWiki
< QA
Revision as of 15:31, 19 May 2017 by Cmuresan (talk | contribs) (Created page with "'''Revision History''' This section describes the modifications that have been made to this wiki page. A new row has been completed each time the content of this document is...")
(diff) ← Older revision | Latest revision (diff) | Newer revision → (diff)
Jump to navigation Jump to search

Revision History

This section describes the modifications that have been made to this wiki page. A new row has been completed each time the content of this document is updated (small corrections for typographical errors do not need to be recorded). The description of the modification contains the differences from the prior version, in terms of what sections were updated and to what extent.

Date Version Author Description
05/18/2017 1.0 Ciprian Muresan Created the first draft for the Activity Stream system addon

Overview

Purpose

Activity Stream is a Firefox about:newtab and about:home replacement that aims to help users return quickly and easily to contextually relevant stuff on the web. It is currently implemented as an Add-on SDK/Jetpack add-on, and has been running as a TestPilot experiment for some months. more info

Scope

This wiki details the testing that will be performed for Activity Stream project. It defines the overall testing requirements and provides an integrated view of the project test activities. Its purpose is to document:

  • What will be tested
  • How testing will be performed

Ownership

Engineering:

QA:

Communication channels:
IRC - #activity-stream
Contact email - Activity Stream (goes to Activity Stream staff)

Testing summary

Scope of Testing

In Scope

The scope of our testing is the Activity Stream desktop system add-on and its functionality. The testing effort for Activity Stream will be invested on the following areas:

  • integration: verify the add-on integration with the current browser functionalities and UI;
  • functionality: basic and advanced functionality to be verified according to the existing requirements;
  • usability: the Activity Stream New Tab content must be easy to use and straightforward;
  • testing how Bookmarks and History are imported in the add-on functionalities (from profile or Firefox account);

Out of Scope

The mobile testing is not in Desktop QA Engineering's scope.

Requirements for testing

Environments

Testing will be performed on the following OSes (both x86 & x64 infrastructures):

  • Windows 7
  • Windows 8.1
  • Windows 10
  • Ubuntu 14.04
  • Ubuntu 16.04
  • Mac OS X 10.10
  • Mac OS X 10.11
  • Mac OS X 10.12

Test Strategy

Test Objectives

This section details the progression test objectives that will be covered. Please note that this is at a high level. For large projects, a suite of test cases would be created which would reference directly back to this master. This could be documented in bullet form or in a table similar to the one below.

Ref Function Test Objective Evaluation Criteria Test Type Owners
1 New Tab functionality and content Verify that Activity Stream content is displayed in a new tab Activity stream user content is displayed in each new tab opened Manual Eng Team
2 Bookmarks & history Verify that profile / account bookmarks and history are correctly imported in the add-on All the previous stored data is displayed on the add-on pages Manual Eng Team
3 about:home override Verify that Activity Stream content is displayed when navigating to about:home or clicking the "Home" button. Navigating to about:home correctly redirects to the Activity Stream page Manual Eng Team
4 Disable / Re-enable the Activity Stream system add-on Verify that the system add-on can be disabled and enabled without any issues. 1. Disable the Activity Stream system add-on from the "about:config" page, using browser.newtabpage.activity-stream.enabled pref ("True" for enabled and "False" for disabled).
2. Verify that the browser UI returned to default functionality on the affected areas.
3. Re-enable Screenshots system add-on and verify that the browser has changed back.
Manual Eng Team

Builds

Activity Stream system add-on can be found in the next builds:

  • Nightly - starting with build from 2017-03-06 - a blank page
  • Nightly - starting with build from 2017-04-24 - Top Sites and Search were implemented


Test Execution Schedule

The following table identifies the anticipated testing period available for test execution.

Project phase Start Date End Date
Start project 02/15/2016 -
Study documentation/specs received from developers 02/15/2016 02/16/2016
QA - Test plan creation 01/25/2016 02/17/2016
QA - Test cases/Env preparation 02/18/2016 03/02/2016
QA - Nightly Testing 03/03/2016 -
QA - Beta Testing - -
Load Testing - -
Release Date - -

Testing Tools

Detail the tools to be used for testing, for example see the following table:

Process Tool
Test plan creation Mozilla wiki
Test case creation TestRail
Test case execution TestRail
Bugs management GitHub / Bugzilla

Status

Overview

  • Nightly - starting with build from [2017-04-26]

Risk analysis

Risk areas Mitigation
External dependencies - We should do an end-to-end test of how we will integrate with the browser
- We should determine what our exact requirements are for sample size.
- Look into Telemetry as a contingency plan.
Scope - All locales
- Accessibility requirements

References

List and links for specs:

Meta bug:

  • No meta bug yet.

Testcases

Overview

Summary of testing scenarios

Test Areas

Test Areas Covered Details
General
Private Window Yes
Multi-Process Enabled Yes
Multi-Process Disabled Yes
Theme (high contrast) Yes
L20n
Verify Activity Stream is available in core set of supported locales Yes
UI
Mouse-only operation Yes
Keyboard-only operation Yes Navigation, selection and link opening only.
Display (HiDPI) Yes Testing on 2k and 4k resolution displays.
Interaction (scroll, zoom) Yes
Usable with a screen reader ? e.g. with NVDA
Usability and/or discoverability testing Yes The feature replaces the about:newtab page
Install/Upgrade/Uninstall
Feature upgrades/downgrades data as expected Yes
Does sync work across upgrades Yes Tested if data is kept after upgrade, after import or sync profile data.
Requires install testing No
Affects first-run or onboarding Yes Requires some fetching time if the profile used has stored history and bookmarks.
Does this affect partner builds? Partner build testing ?
Verify that Activity Stream can be "disabled" Yes It should be able to be enabled and disabled by a toggle in about:preferences or by pref in about:config
Data Monitoring
Temporary or permanent telemetry monitoring - Not covered by the Engineering QA team
Telemetry correctness testing - Not covered by the Engineering QA team
Server integration testing - Not covered by the Engineering QA team
Offline and server failure testing - Not covered by the Engineering QA team
Load testing - Not covered by the Engineering QA team
Add-ons
If add-ons are available for testing feature, or is current feature will affect some add-ons, then API testing should be done for the add-on.
Addon API required? ?
Comprehensive API testing ?
Permissions ?
Testing with existing/popular add-ons Yes
Security
Security is in charge of Matt Wobensmith. We should contact his team to see if security testing is necessary for current feature.
3rd-party security review ? Not covered by the Engineering QA team
Privilege escalation testing ? Not covered by the Engineering QA team
Fuzzing ? Not covered by the Engineering QA team
Web Compatibility
Testing against target sites No
Survey of many sites for compatibility No
Interoperability
Common protocol/data format with other software: specification available. Interop testing with other common clients or servers.
Coordinated testing/interop across the Firefoxes: Desktop, Android, iOS ?
Interaction of this feature with other browser features Yes

Test suite

Bug Work

Sign off

Criteria

Check list

  • All test cases should be executed
  • Has sufficient automated test coverage (as measured by code coverage tools) - coordinate with RelMan
  • All blockers, criticals must be fixed and verified or have an agreed-upon timeline for being fixed (as determined by engineering/RelMan/QA)

Results

Nightly testing
List of OSes that will be covered by testing

  • Link for the tests run
    • Full Test suite - N/A

Merge to Beta Sign-off List of OSes that will be covered by testing

  • Link for the tests run - N/A
    • Full Test suite - N/A

Checklist

Exit Criteria Status Notes/Details
Testing Prerequisites (specs, use cases) [DONE]
Testing Infrastructure setup No
Test Plan Creation [DONE]
Test Cases Creation [DONE]
Full Functional Tests Execution [IN PROGRESS]
Automation Coverage - Not on QA manual end.
Performance Testing - Not on QA manual end.
All Defects Logged
Critical/Blockers Fixed and Verified
Daily Status Report (email/etherpad statuses/ gdoc with results)
Metrics/Telemetry
Load testing
QA Beta - Full Testing
QA Signoff - Beta Release Email to be sent