Add-ons/QA/Testplan/client-side changes for disco-TAAR

From MozillaWiki
Jump to: navigation, search

Revision History

Date Version Author Description
04-01-2019 1.0 Vlad Jiman Updated all sections


Overview

To enable recommendations from AMO for TAAR, we need to supply a preference for the user to enable/disable recommendations and provide a mechanism to make the "client ID" accessible by AMO (to return TAAR recommendations). There are two separate parts, each with its own bug that are dependencies of the tracking bug.

Purpose

This document purports to detail the test approach to disco-TAAR, including Entry/Exit criteria, Scope for testing, links to testcases etc

Entry Criteria

  • QA has access to all the PRDs, mocks and related documents
  • The feature has landed on Nightly
  • AMO parts have landed on dev

Exit Criteria

  • All the bugs against the feature have been triaged
  • All the P1/P2 bugs have been fixed
  • All the resolved bugs have been verified by QA
  • The find/fixed rate is going down over a predefined period of time

Acceptance Criteria

This section broadly outlines when the product is ready to ship

  • QA has signed off
  • All the required Telemetry is in place
  • All info is localized at least for a pre-defined set of locales
  • All the necessary PR/blogposts have been sent out

Scope

This section describes what parts of the feature will be tested and what parts won't be.

what's in scope?

  • Validation of the TAAR ( Telemetry-Aware Addon Recommender) system along with all of the attached UI features.

what's out of scope?

  • Security testing
  • Device testing

Ownership

Dev Lead: Shane Caraveo ; irc nick:mixedpuppy
QA Manager: Krupa Raj; irc nick :krupa
QA Lead: Victor Carciu; irc nick :victorc
Webextensions QA: Vlad Jiman; irc nick :CosminB

Requirements for testing

Environments

OSes covered: Windows, Mac OS X, Linux

Channel dependent settings (configs) and environment setups

Nightly

security.signed_app_signatures.policy with the default value 2

Beta

security.signed_app_signatures.policy with the default value 2

Release

Post Beta / Release

The feature is enabled by default.

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 Test Type Owners
TO-1 Private Browsing testing What is expected to happen? - Default suggestions Manual Add-ons QA Team
TO-2 Profile testing Including localization (Profiles made using different regions, having installed region-specific addons) Manual Add-ons QA Team
TO-3 Toggle suggestions ON/OFF Validate the on/off toggle of the suggestions from the settings menu for above scenarios Manual Add-ons QA Team
TO-4 Performance testing To verify that the system still performs under load Automated Add-ons QA Team


Test profiles

Ref Profile Objective
TP-1 Validate if default recommendations are shown for fresh profiles
TP-2 Validate if personalized recommendations are shown for profile that has bookmarks and navigation history
TP-3 Validate if personalized recommendations are shown for profile that has installed extensions
TP-4 Validate if personalized recommendations are shown for profile that has both installed extensions and bookmarks
TP-5 Validate if personalized recommendations are shown for localization profile
TP-6 Validate if default recommendations are shown when the service is unavailable

Builds

This section should contain links for builds with the feature -

  • Link for Nightly builds
  • Link for Beta builds
  • Link for Release builds

Test Execution Schedule

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

Project phase Start Date End Date
Start project 10/18/2018
Study documentation/specs received from developers 11/02/2018
QA - Test plan creation 12/23/2018
QA - Test cases/Env preparation 01/03/2019
QA - Nightly Testing
QA - Beta 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 Bugzilla

Status

Overview

Track the dates and build number where feature was released to Nightly
Track the dates and build number where feature was merged to Release/Beta

Risk analysis

Identify the high-risk assumptions
Identify existing bugs on the feature with high risk
Identify if other areas are affected by the fix

References

* List and links for specs
  PRD - Gdocs
  Install flow - Presentation
  

* bug 1499934 - [META] Changes that need to ride the train for Disco-TAAR
Full Query
ID Priority Component Assigned to Summary Status Target milestone
1489531 P1 Security: Review Requests Shane Caraveo (:mixedpuppy) Expose telemetry client_id to about:addons and AMO remove SHIELD dependency from TAAR VERIFIED Firefox 66
1499470 P1 Frontend Mark Striemer [:mstriemer] Add pref to disable TAAR for Discopane implementation VERIFIED mozilla65

2 Total; 0 Open (0%); 0 Resolved (0%); 2 Verified (100%);


Testcases

Overview

Summary of testing scenarios

Test Areas

Test Areas Covered Details
Private browsing
Profile testing
System toggled ON/OFF
Performance testing
Cookie's round trip validation


Bug Work

Tracking bug - []

Bug fix verification

[Verified] [ Bug xxxxxxx] - Display permissions prompt for webextensions installed using mozAddonManager

2017-01-10: verified fixed on 53.0a1 across platforms

[Verified] [ Bug xxxxxxx] - Prompt users with permissions for third-party webextensions installs

2015-04-21: verified fixed on 53.0a1 across platforms
Logged bugs

[ Bug xxxxxxx] - Misaligned icon and webextension name in permissions doorhanger

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, use template from []


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

  • Link for the tests run
    • Full Test suite

Checklist

Exit Criteria Status Notes/Details
Testing Prerequisites (specs, use cases)
Testing Infrastructure setup
Test Plan Creation 04-01-2019
Test Cases Creation
Full Functional Tests Execution
Automation Coverage
Performance Testing
All Defects Logged
Critical/Blockers Fixed and Verified
Metrics/Telemetry
QA Signoff - Nightly Release Email to be sent
QA Beta - Full Testing
QA Signoff - Beta Release Email to be sent