QA/Multi-Addon Pref: Difference between revisions

From MozillaWiki
< QA
Jump to navigation Jump to search
(Created page with "'''Approvals Required / Received''' The following individuals are required to/have approved this Test Plan: {| class="wikitable" |- ! Name !! Title !! Department !! Approval...")
 
No edit summary
 
(14 intermediate revisions by the same user not shown)
Line 7: Line 7:
! Name !! Title !! Department !! Approval Date !! Method
! Name !! Title !! Department !! Approval Date !! Method
|-
|-
| || QA Manager || Product Integrity || Date || Email
| Ryan VanderMeulen || QA Manager || Product Integrity || Date || Email
|-
|-
| || Software Engineer || Engineering || Date || Email
| Blake Kaplan || Software Engineer || Engineering || Date || Email
|-
|-
| || EPM || Product Management || Date || Email
| TBD || EPM || Product Management || Date || Email
|}
|}


Line 23: Line 23:
! Date !! Version !! Author !! Description  
! Date !! Version !! Author !! Description  
|-
|-
| 11/23/2015 || 1.0 || Brindusa Tot || Created first draft
| 7/17/2017 || 1.0 || Grover Wimberly IV || Created first draft
|-
|-
| 10/05/2016|| 1.1 || Adrian Florinescu ||  Added point : 3.2 Channel dependent settings (configs) and environment setup
|-
| 02/28/2017|| 1.2 || Brindusa Tot ||  Move Risk Assessment and Coverage upper in the test plan, under the Test Strategy chapter
|-
| 05/09/2017|| 1.3 || Brindusa Tot ||  Update content based on new train model (without Aurora)
|-
| 06/08/2017|| 1.4 || Rares Bologa ||  Added 'Approvals' area
|}
|}


= Overview =
= Overview =
== Purpose ==
== Purpose ==
Detail the purpose of this document. For example:
* Testing and verifying the value of the pref for e10s multi add-on.
* The test scope, focus areas and objectives
* The test responsibilities
* The test strategy for the levels and types of test for this release
* The entry and exit criteria
* The basis of the test estimates
* Any risks, issues, assumptions and test dependencies
* The test schedule and major milestones
* The test deliverables


== Scope ==
== Scope ==
This wiki details the testing that will be performed by the project team for the <project name> project. It defines the overall testing requirements and provides an integrated view of the project test activities. Its purpose is to document:
This wiki details the testing that will be performed by the project team for the e10s multi-staged rollout pref 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
* What will be tested
**A version of Firefox 55b9 or newer.
* How testing will be performed
* How testing will be performed
**Testing will be performed by the Softvision QA Las Vegas team.


== Ownership ==
== Ownership ==
What resources are needed, and when (developers, QA, PMs working on the feature)
Product contact:<br />
 
 
 
Engineering contact:<br />
[mailto:bkaplan@mozilla.com Blake Kaplan] (IRC: mrbkap) <br />
 
 
QA contact:<br />
[mailto:rvandermeulen@mozilla.com Ryan VanderMeulen] (IRC: RyanVM)<br />
 
QA:<br />
PM for QA team - [mailto:rares.bologa@softvisioninc.eu Rares Bologa] (IRC: RaresB)<br />
QA Engineering Contact - [mailto:gwimberly@softvision.com Grover Wimberly IV] (IRC: Grover-QA)<br />
QA - [mailto:kkumari@softvision.com Kanchan Kumari] (IRC: Kanchan_QA)<br />
QA - [mailto:jwilliams@softvision.com Justin Williams] (IRC: JW_SoftvisionQA)<br />
QA - [mailto:stefan.georgiev@softvision.com Stefan Georgiev] (IRC: StefanG_QA)<br />
QA - [mailto:amasresha@softvision.com Abe Masresha] (IRC: Abe_LV)<br />
 
= Testing summary =  
= Testing summary =  
== Scope of Testing ==
== Scope of Testing ==
Line 64: Line 70:
= Requirements for testing =
= Requirements for testing =
== Environments ==
== Environments ==
Specify OSes that need to be covered
* Windows 7/8/8.1/10
Specify Devices that need to be covered
* Linux (Ubuntu 16.04)
Specify other configuration/environmental setup needed
* Mac OS X
 


== Channel dependent settings (configs) and environment setups ==
== Channel dependent settings (configs) and environment setups ==
Line 123: Line 128:
! Ref !! Function !! Test Objective !! Evaluation Criteria !! Test Type !! RAC !! Owners  
! Ref !! Function !! Test Objective !! Evaluation Criteria !! Test Type !! RAC !! Owners  
|-
|-
| 1 || Name of the feature or sub-function being tested || The objective the test is trying to demonstrate || The criteria that will be evaluated to demonstrate the test is successful || Manual/ Automation/ Regression/ Performance/ Usability/ Security/ Telemetry || RAC-1, RAC-2, RAC-3 || Eng Team
| 1 || Checking preference value of dom.ipc.processCount.web || Verify the pref || Value is set to integer instead of a string || Manual Testing (Bug Verification) || RAC-1, RAC-2, RAC-3 || Eng Team
|-
|-
| 2 || Repeat for each feature/sub-function || || || || ||
| 2 || Ensure updates of existing users of older versions have the pref flipped || Verify the pref || Value is set to integer instead of a string for existing Firefox users|| Manual Testing (Bug Verification)  || RAC-1, RAC-2, RAC-3 || Eng Team
|-
|-
| 3 || || || || || ||
| 3 || Monitoring the process tabs of the operating system || Verify multiple content processes are running per the pref || Multiple content processes are running simultaneously || Manual Testing (Bug Verification)  || RAC-1, RAC-2, RAC-3 || Eng Team
|}
|}


Line 196: Line 201:
|-
|-
| Private Window  
| Private Window  
|style="text-align:center;" | ||  
|style="text-align:center;" | No ||  
|-
|-
| Multi-Process Enabled  
| Multi-Process Enabled  
|style="text-align:center;" | ||  
|style="text-align:center;" | Yes ||  
|-
|-
| Multi-process Disabled  
| Multi-process Disabled  
|style="text-align:center;" | ||  
|style="text-align:center;" | No ||  
|-
|-
| Theme (high contrast)  
| Theme (high contrast)  
|style="text-align:center;" | ||  
|style="text-align:center;" | No ||  
|-
|-
| '''UI'''  
| '''UI'''  
Line 211: Line 216:
|-
|-
| Mouse-only operation   
| Mouse-only operation   
|style="text-align:center;" | ||  
|style="text-align:center;" | No ||  
|-
|-
| Keyboard-only operation   
| Keyboard-only operation   
|style="text-align:center;" | ||
|style="text-align:center;" | No ||
|-
|-
| Display (HiDPI)  
| Display (HiDPI)  
|style="text-align:center;" | ||  
|style="text-align:center;" | No ||  
|-
|-
| Interaction (scroll, zoom)  
| Interaction (scroll, zoom)  
|style="text-align:center;" | ||  
|style="text-align:center;" | No ||  
|-
|-
| Usable with a screen reader   
| Usable with a screen reader   
|style="text-align:center;" | || e.g. with NVDA
|style="text-align:center;" | No || e.g. with NVDA
|-
|-
| Usability and/or discoverability testing   
| Usability and/or discoverability testing   
|style="text-align:center;" | || Is this feature user friendly
|style="text-align:center;" | No || Is this feature user friendly
|-
|-
| RTL build testing   
| RTL build testing   
|style="text-align:center;" | ||
|style="text-align:center;" | No ||
|-
|-
| '''Help/Support'''  
| '''Help/Support'''  
Line 235: Line 240:
|-
|-
| Help/support interface required   
| Help/support interface required   
|style="text-align:center;" | || Make sure link to support/help page exist and is easy reachable.
|style="text-align:center;" | No || Make sure link to support/help page exist and is easy reachable.
|-
|-
| Support documents planned(written)   
| Support documents planned(written)   
|style="text-align:center;" | || Make sure support documents are written and are correct.
|style="text-align:center;" | No || Make sure support documents are written and are correct.


|-
|-
Line 245: Line 250:
|-
|-
| Feature upgrades/downgrades data as expected   
| Feature upgrades/downgrades data as expected   
|style="text-align:center;" | ||
|style="text-align:center;" | Yes ||
|-
|-
| Does sync work across upgrades   
| Does sync work across upgrades   
|style="text-align:center;" | ||  
|style="text-align:center;" | ??? ||  
|-
|-
| Requires install testing     
| Requires install testing     
|style="text-align:center;" | || separate feature/application installation needed (not only Firefox)
|style="text-align:center;" | Yes || separate feature/application installation needed (not only Firefox)
|-
|-
| Affects first-run or onboarding     
| Affects first-run or onboarding     
|style="text-align:center;" | || Florin/Lawrence are investigating if there is a dedicated QA for this, or we should test? Should be an yes/no and if is yes should add in detail column the team/person assigned.
|style="text-align:center;" | Yes || Florin/Lawrence are investigating if there is a dedicated QA for this, or we should test? Should be an yes/no and if is yes should add in detail column the team/person assigned.
|-
|-
| Does this affect partner builds? Partner build testing   
| Does this affect partner builds? Partner build testing   
|style="text-align:center;" | || yes/no options, add comment with details about who will lead testing
|style="text-align:center;" | No || yes/no options, add comment with details about who will lead testing


|-
|-
Line 264: Line 269:
|-
|-
| Enterprise administration   
| Enterprise administration   
|style="text-align:center;" | ||  
|style="text-align:center;" | No ||  
|-
|-
| Network proxies/autoconfig   
| Network proxies/autoconfig   
|style="text-align:center;" | ||  
|style="text-align:center;" | No ||  
|-
|-
| ESR behavior changes   
| ESR behavior changes   
|style="text-align:center;" | ||  
|style="text-align:center;" | ??? ||  
|-
|-
| Locked preferences   
| Locked preferences   
|style="text-align:center;" | ||
|style="text-align:center;" | No ||


|-
|-
Line 280: Line 285:
|-
|-
| Temporary or permanent telemetry monitoring   
| Temporary or permanent telemetry monitoring   
|style="text-align:center;" | || List of error conditions to monitor
|style="text-align:center;" | ??? || List of error conditions to monitor
|-
|-
| Telemetry correctness testing   
| Telemetry correctness testing   
|style="text-align:center;" | ||  
|style="text-align:center;" | ??? ||  
|-
|-
| Server integration testing   
| Server integration testing   
|style="text-align:center;" | ||  
|style="text-align:center;" | No ||  
|-
|-
| Offline and server failure testing   
| Offline and server failure testing   
|style="text-align:center;" | ||
|style="text-align:center;" | No ||
|-
|-
| Load testing   
| Load testing   
|style="text-align:center;" | ||
|style="text-align:center;" | No ||


|-
|-
Line 299: Line 304:
|-
|-
| Addon API required?   
| Addon API required?   
|style="text-align:center;" | ||  
|style="text-align:center;" | No ||  
|-
|-
| Comprehensive API testing   
| Comprehensive API testing   
|style="text-align:center;" | ||  
|style="text-align:center;" | No ||  
|-
|-
| Permissions   
| Permissions   
|style="text-align:center;" | ||  
|style="text-align:center;" | No ||  
|-
|-
| Testing with existing/popular addons
| Testing with existing/popular addons
|style="text-align:center;" | ||  
|style="text-align:center;" | ??? ||  


|-
|-
Line 315: Line 320:
|-
|-
| 3rd-party security review   
| 3rd-party security review   
|style="text-align:center;" | ||  
|style="text-align:center;" | No ||  
|-
|-
| Privilege escalation testing
| Privilege escalation testing
|style="text-align:center;" | ||  
|style="text-align:center;" | No ||  
|-
|-
| Fuzzing   
| Fuzzing   
|style="text-align:center;" | ||  
|style="text-align:center;" | No ||  


|-
|-
Line 328: Line 333:
|-
|-
| Testing against target sites   
| Testing against target sites   
|style="text-align:center;" | ||  
|style="text-align:center;" | No ||  
|-
|-
| Survey of many sites for compatibility   
| Survey of many sites for compatibility   
|style="text-align:center;" | ||  
|style="text-align:center;" | No ||  


|-
|-
Line 338: Line 343:
|-
|-
| Common protocol/data format with other software: specification available. Interop testing with other common clients or servers.   
| Common protocol/data format with other software: specification available. Interop testing with other common clients or servers.   
|style="text-align:center;" | ||  
|style="text-align:center;" | No ||  
|-
|-
| Coordinated testing/interop across the Firefoxes: Desktop, Android, iOS   
| Coordinated testing/interop across the Firefoxes: Desktop, Android, iOS   
|style="text-align:center;" | ||  
|style="text-align:center;" | No ||  
|-
|-
| Interaction of this feature with other browser features   
| Interaction of this feature with other browser features   
|style="text-align:center;" | ||  
|style="text-align:center;" | Yes (e10s multi-process) ||  
|}
|}


== Test suite ==
== Test suite ==
  Full Test suite - Link to test rail - testcases should be added under Firefox Desktop project [https://testrail.stage.mozaws.net/index.php?/suites/overview/17 link]
  Full Test suite - TBA
Smoke Test suite - Link with the tests - if available/needed.
Regression Test suite - Link with the tests - if available/needed.


= Bug Work =
= Bug Work =
Meta bug: [https://bugzilla.mozilla.org/show_bug.cgi?id=12345 12345 - bug summary]
Meta bug: [https://bugzilla.mozilla.org/show_bug.cgi?id=1380725 1380725 - release and beta channels are only running 1 content process even when in the 4 process cohort]


<div class="toccolours mw-collapsible mw-collapsed" style="width:auto">
<div class="toccolours mw-collapsible mw-collapsed" style="width:auto">
====== Logged bugs ( blocking [https://bugzilla.mozilla.org/show_bug.cgi?id=12345 12345] )======
====== Logged bugs ( blocking [https://bugzilla.mozilla.org/show_bug.cgi?id=1380725 1380725] )======


<div class="mw-collapsible-content">
<div class="mw-collapsible-content">
<bugzilla>
<bugzilla>
     {
     {
         "blocks":[12345],
         "blocks":[1380725],
         "include_fields": "id, priority, component, assigned_to, summary, status, target_milestone"
         "include_fields": "id, priority, component, assigned_to, summary, status, target_milestone"
     }
     }
Line 374: Line 377:
<bugzilla>
<bugzilla>
     {
     {
         "blocks":[12345],
         "blocks":[1380725],
         "resolution":"FIXED",
         "resolution":"FIXED",
         "include_fields": "id, priority, component, assigned_to, summary, status, resolution, target_milestone"
         "include_fields": "id, priority, component, assigned_to, summary, status, resolution, target_milestone"
Line 386: Line 389:
Checklist
Checklist
* All test cases should be executed
* All test cases should be executed
* Has sufficient automated test coverage (as measured by code coverage tools) - coordinate with RelMan
* Preferences are set in the browser properly.
* All blockers, criticals must be fixed and verified or have an agreed-upon timeline for being fixed (as determined by engineering/RelMan/QA)
* All blockers, criticals must be fixed and verified or have an agreed-upon timeline for being fixed (as determined by engineering/Release Management/QA)


== Results ==
== Results ==

Latest revision as of 15:41, 18 July 2017

Approvals Required / Received

The following individuals are required to/have approved this Test Plan:

Name Title Department Approval Date Method
Ryan VanderMeulen QA Manager Product Integrity Date Email
Blake Kaplan Software Engineer Engineering Date Email
TBD EPM Product Management Date Email


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
7/17/2017 1.0 Grover Wimberly IV Created first draft

Overview

Purpose

  • Testing and verifying the value of the pref for e10s multi add-on.

Scope

This wiki details the testing that will be performed by the project team for the e10s multi-staged rollout pref 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
    • A version of Firefox 55b9 or newer.
  • How testing will be performed
    • Testing will be performed by the Softvision QA Las Vegas team.

Ownership

Product contact:


Engineering contact:
Blake Kaplan (IRC: mrbkap)


QA contact:
Ryan VanderMeulen (IRC: RyanVM)

QA:
PM for QA team - Rares Bologa (IRC: RaresB)
QA Engineering Contact - Grover Wimberly IV (IRC: Grover-QA)
QA - Kanchan Kumari (IRC: Kanchan_QA)
QA - Justin Williams (IRC: JW_SoftvisionQA)
QA - Stefan Georgiev (IRC: StefanG_QA)
QA - Abe Masresha (IRC: Abe_LV)

Testing summary

Scope of Testing

In Scope

Detail what is in scope from a testing perspective for the project team.

Out of Scope

Detail what is out of scope from a testing perspective for the project team. Note: if usability testing is not in the scope of testing feature.

Requirements for testing

Environments

  • Windows 7/8/8.1/10
  • Linux (Ubuntu 16.04)
  • Mac OS X

Channel dependent settings (configs) and environment setups

Nightly

text

Beta

text

Post Beta / Release

text

Test Strategy

Risk Assessment and Coverage

ID Description / Threat Description Covered by Test Objective Magnitude Probability Priority Impact Score
RAC-1 Risk description 1 TO-1 2-Moderate 1-Unlikely 3-High 6
RAC-2 Risk description 2 TO-1 3-High 3-Almost Certain 3-High 27
RAC-3 Risk description 3 TO-2 2-Moderate 2-Possible 3-High 12

Values:

  • Magnitude: 1- Low , 2-Moderate, 3-High
  • Probability: 1-Unlikely, 2-Possible, 3-Almost Certain
  • Priority: 1 - Low, 2-Medium, 3-High

Impact Score Breakdown:

  • An impact value of 1, 2, 3, 4 would describe an area which although should be covered there aren't expected any discoveries of critical issues.
  • An impact value of 6, 8, 9, 12 would describe an area in which we expect to find issues but those issues are not expected to be critical.
  • An impact value of 18 or 27 would describe an area on which it is likely to find issues and those issues to be critical or blockers.

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 RAC Owners
1 Checking preference value of dom.ipc.processCount.web Verify the pref Value is set to integer instead of a string Manual Testing (Bug Verification) RAC-1, RAC-2, RAC-3 Eng Team
2 Ensure updates of existing users of older versions have the pref flipped Verify the pref Value is set to integer instead of a string for existing Firefox users Manual Testing (Bug Verification) RAC-1, RAC-2, RAC-3 Eng Team
3 Monitoring the process tabs of the operating system Verify multiple content processes are running per the pref Multiple content processes are running simultaneously Manual Testing (Bug Verification) RAC-1, RAC-2, RAC-3 Eng Team

Builds

This section should contain links for builds with the feature -

  • Links for Nightly builds
  • Links for Beta builds

Test Execution Schedule

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

Project phase Start Date End Date
Start project
Study documentation/specs received from developers
QA - Test plan creation
QA - Test cases/Env preparation
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/ Google docs
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


References

  • List and links for specs
 List and links for available specs - documents, user stories, specifications
  • Meta bug

Testcases

Test Areas

Test Areas Covered Details
Private Window No
Multi-Process Enabled Yes
Multi-process Disabled No
Theme (high contrast) No
UI
Mouse-only operation No
Keyboard-only operation No
Display (HiDPI) No
Interaction (scroll, zoom) No
Usable with a screen reader No e.g. with NVDA
Usability and/or discoverability testing No Is this feature user friendly
RTL build testing No
Help/Support
Help/support interface required No Make sure link to support/help page exist and is easy reachable.
Support documents planned(written) No Make sure support documents are written and are correct.
Install/Upgrade
Feature upgrades/downgrades data as expected Yes
Does sync work across upgrades ???
Requires install testing Yes separate feature/application installation needed (not only Firefox)
Affects first-run or onboarding Yes Florin/Lawrence are investigating if there is a dedicated QA for this, or we should test? Should be an yes/no and if is yes should add in detail column the team/person assigned.
Does this affect partner builds? Partner build testing No yes/no options, add comment with details about who will lead testing
Enterprise Raise up the topic to developers to see if they are expecting to work different on ESR builds
Enterprise administration No
Network proxies/autoconfig No
ESR behavior changes ???
Locked preferences No
Data Monitoring
Temporary or permanent telemetry monitoring ??? List of error conditions to monitor
Telemetry correctness testing ???
Server integration testing No
Offline and server failure testing No
Load testing No
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? No
Comprehensive API testing No
Permissions No
Testing with existing/popular addons ???
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 No
Privilege escalation testing No
Fuzzing No
Web Compatibility depends on the feature
Testing against target sites No
Survey of many sites for compatibility No
Interoperability depends on the feature
Common protocol/data format with other software: specification available. Interop testing with other common clients or servers. No
Coordinated testing/interop across the Firefoxes: Desktop, Android, iOS No
Interaction of this feature with other browser features Yes (e10s multi-process)

Test suite

Full Test suite - TBA

Bug Work

Meta bug: 1380725 - release and beta channels are only running 1 content process even when in the 4 process cohort

Logged bugs ( blocking 1380725 )

No results.

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


Bug fix verification

No results.

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

Sign off

Criteria

Checklist

  • All test cases should be executed
  • Preferences are set in the browser properly.
  • All blockers, criticals must be fixed and verified or have an agreed-upon timeline for being fixed (as determined by engineering/Release Management/QA)

Results

Nightly testing

List of OSes that will be covered by testing

  • Link for the tests run
    • Full Test suite, link to TestRail - Tests Runs and Results link
    • Daily Smoke, if needed/available
    • Regression Test suite, if needed/available


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
Test Cases Creation
Automation Coverage
Performance Testing
All Defects Logged
Critical/Blockers Fixed and Verified
Metrics/Telemetry
Basic/Core functionality Nightly testing
QA mid-Nightly Signoff Email to be sent
QA Nightly - Full Testing
QA pre-Beta Signoff Email to be sent
QA Beta - Full Testing
QA pre-Release Signoff Email to be sent