QA/SnoozeTabs
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 |
---|---|---|---|
11/02/2016 | 1.0 | Vlad Bacia-Mociran | Created first draft |
01/03/2016 | 1.1 | Emil Pasca | General Updates |
Contents
Overview
Purpose
SnoozeTabs is a Firefox add-on which lets you "snooze" a tab and have it pop up after a predetermined interval of time. After hitting the Snooze Tab add-on button in the toolbar, you can tell the tab to go away and come back at a desired time.
Scope
This wiki details the testing that will be performed by the project team for the SnoozeTabs add-on. 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 - Blake Winton (irc: bwinton)
Engineering - Sevaan Franks (irc: sevaan)
QA:
PM for QA team - Rares Bologa (irc: RaresB)
Leading QA efforts - Paul Oiegas (irc: pauloiegasSV)
QA - Emil Pasca (irc: emilpasca)
Communication channels:
IRC channel - #txp
Feature email address: - testpilot-dev@mozilla.org
Testing summary
Scope of Testing
In Scope
The goal is to experiment what to do with tabs you don’t need right now. This experiment allows the user to set a predefined or custom time interval in which the browser tab is "snoozed" and after that time has elapsed, the user will be notified to revisit that tab.
Out of Scope
Following areas/features are considered out of scope and will not be considered as testing zones to be handled in this test plan:
- Mobile testing
Requirements for testing
Environments
Testing will be performed on the following OSes (both x86 & x64 infrastructures):
- Windows 7
- Windows 8.1
- Windows 10
- Ubuntu 15.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.
Ref | Function | Test Objective | Evaluation Criteria | Test Type | Owners |
---|---|---|---|---|---|
1 | Install SnoozeTabs add-on | Verify that the add-on is correctly installed. | Add-on UI changes are present in the browser. | Manual | Eng Team |
2 | SnoozeTabs functionality | Verify that the browser tabs can be snoozed through SnoozeTabs add-on. | 1. Use a predefined time interval for the snooze tabs. 2. Use a custom time interval for the snooze tabs. 3. Manage the snoozed tabs. 4.Verify that notifications are shown when a snoozed tab is brought back. |
Manual | Eng Team |
4 | Keyboard only navigation | Verify that all add-on functionalities can be accessed from the keyboard. | All functionalities can be accessed from keyboard. | Manual | Eng Team |
5 | Private Browsing | Verify the functionality of the add-on in Private Browsing mode. | The add-on doesn’t work in Private Browsing. | Manual | Eng Team |
6 | Disable / Re-enable SnoozeTabs add-on | Verify that the add-on can be disabled and enabled without any issues. | 1. Disable SnoozeTabs add-on and verify that the previously snoozed tabs are still kept. 2. Re-enable SnoozeTabs add-on and verify that the previously snoozed tabs are still kept. |
Manual | Eng Team |
7 | Uninstall SnoozeTabs add-on | Verify that the menu changes are reverted and browser returns to default. | 1. SnoozeTabs add-on is uninstalled. 2. Toolbar icon is removed. 3. Snoozed tabs are not removed and notifications will no longer be displayed. |
Manual | Eng Team |
Builds
Since SnoozeTabs is an add-on, you can install it from the following links:
- A custom build can be made using the steps from GitHub repo.
Or you can install it trough Test Pilot from the Snooze Tabs experiments page. Note that the add-on only works on Firefox versions 49.x and up.
Test Execution Schedule
The following table identifies the anticipated testing period available for test execution.
Project phase | Start Date | End Date |
---|---|---|
Start project | 12/20/2013 | - |
Study documentation/specs received from developers | 10/20/2016 | - |
QA - Test plan creation | 10/21/2016 | 11/02/2016 |
QA - Test cases/Env preparation | 11/07/2016 | 21/02/2016 |
QA - Pre-Release in Test Pilot Testing | 11/16/2016 | |
QA - Release in Test Pilot Date | 02/22/2017 | |
QA - Nightly Testing | ||
QA - Aurora 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 | GitHub |
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 Aurora Track the dates and build number where feature was merged to Release/Beta
Risk analysis
Risk areas | Mitigation |
---|---|
External dependencies on Test Pilot | - We should do an end-to-end test of how we will integrate with the system. - We should determine what our exact requirements are for sample size. - Look into Telemetry as a contingency plan. |
SnoozeTabs add-on compatibility and usability with e10s/non e10s tabs. | - SnoozeTabs add-on should be e10s compatible. |
Reviews: data practices, AMO, legal | - We should be covered by Test Pilot legal agreement so no additional legal review will be needed for MVP; we will not need to get AMO reviews, internal team code reviews will be enough for MVP launch. |
Scope | - Targeting only en-US? - Accessibility requirements == best effort? - Testing with RTL mode enabled. |
References
Meta bug: N/A
Testcases
Overview
Summary of testing scenarios
Test Areas
Test Areas | Covered | Details |
---|---|---|
Private Window | Yes | |
Multi-Process Enabled | Yes | |
Multi-process Disabled | Yes | |
Theme (high contrast) | Yes | |
RTL (Right to Left style) | Yes | |
UI | ||
Mouse-only operation | Yes | |
Keyboard-only operation | Yes | |
Display (HiDPI) | Yes | |
Interaction (scroll, zoom) | Yes | |
Usable with a screen reader | No | e.g. with NVDA |
Usability and/or discoverability testing | Yes | Is this feature user friendly |
Install/Upgrade | ||
Feature upgrades/downgrades data as expected | Yes | |
Does sync work across upgrades | N/A | |
Requires install testing | Yes | separate feature/application installation needed (not only Firefox) |
Affect 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 | yes/no options, add comment with details about who will lead testing
| |
Data Monitoring | ||
Temporary or permanent telemetry monitoring | - | Not on QA manual end. |
Telemetry correctness testing | - | Not on QA manual end. |
Server integration testing | - | Not on QA manual end. |
Offline and server failure testing | - | Not on QA manual end. |
Load testing | - | Not on QA manual end.
|
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 | Yes | Especially the ones from Test Pilot platform.
|
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 on QA manual end. | |
Privilege escalation testing | Not on QA manual end. | |
Fuzzing |
| |
Web Compatibility | depends on the feature | |
Testing against target sites | Yes | |
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. | ||
Coordinated testing/interop across the Firefoxes: Desktop, Android, iOS | No | |
Interaction of this feature with other browser features | Yes |
Test suite
- Full Test suite - Snooze Tabs - Full Functional (TestRail)
- Smoke Test suite - SnoozeTabs Smoke Test suite (gdocs)
- Regression Test suite - TBD
Bug Work
- Tracking bug – N/A
- Found issues list - SV QA Engineering found bugs
Sign off
Criteria
- Has sufficient automated test coverage (as measured by code coverage tools) - coordinate with RelMan
- All test cases should be executed
- All blockers, criticals must be fixed and verified or have an agreed-upon timeline for being fixed (as determined by engineering/RelMan/QA)
Results
Link for the tests runs
- Full Test suite
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 | [DONE] | |
Automation Coverage | - | Not on QA manual end. |
Performance Testing | - | Not on QA manual end. |
All Defects Logged | [DONE] | |
Critical/Blockers Fixed and Verified | [IN PROGRESS] | |
Daily Status Report (email/etherpad statuses/ gdoc with results) | - | |
Metrics/Telemetry | - | Not on QA manual end. |
QA Signoff - Nightly Release | Email to be sent |