Add-ons/QA/Testplan/Improve keyboard shortcut support

From MozillaWiki
Jump to: navigation, search

Revision History

Date Version Author Description
01/29/2018 1.0 Cosmin Badescu Created first draft


Overview

Allow the user to understand what the current keyboard mapping is, highlighting keyboard mappings that are overriden by add-ons, and providing a UI for users to adjust keyboard shortcuts used by web extensions.

Purpose

This document purports to detail the test approach for the improvements of Local Storage API and includes Entry/Exit criteria, Scope for testing, links to test cases etc

Entry Criteria

  • QA has access to all the PRDs, mocks and related documents
  • The feature has landed on Nightly
  • AMO parts has 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?

  • The assigned shortcut keys work as expected when they are assigned from the extension.

what's out of scope?

  • Security testing

Ownership

Dev Lead: Mark Striemer; irc nick :mstriemer
QA Manager: Krupa Raj; irc nick :krupa
QA Lead: Victor Carciu; irc nick :victorc
Webextensions QA: Cosmin Badescu; irc nick :CosminB

Requirements for testing

Environments

OSes covered: Windows, Mac OS X, Linux

Channel dependent settings (configs) and environment setups

Nightly

  • N/A

Beta

  • N/A

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 Installing from AMO To verify that the extension uses the API correctly Manual Add-ons QA Team
TO-2 Installing from local files To verify that the extension uses the API correctly Manual Add-ons QA Team
TO-3 Add-on updates To verify that the extension uses the API correctly Manual Add-ons QA Team
TO-4 Sideloading To verify that the extension uses the API correctly Manual Add-ons QA Team

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
Study documentation/specs received from developers
QA - Test plan creation 01-29-2018
QA - Test cases/Env preparation 12-15-2018 N/A
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 [ Docs] / [ TestRail]
Test case execution [ Docs] / [ TestRail]
Bugs management Bugzilla / 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 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 - [1]
  Install flow - [2]
  


* bug 1215061 - [META] Better keyboard shortcut support
Full Query
ID Priority Component Assigned to Summary Status Resolution Target milestone
57805 P3 DOM: UI Events & Focus Handling front end for customizing keyboard shortcuts (configurable/user-defined keys) NEW Future
588710 P3 General Implement "about:shortcuts" showing all shortcuts and allowing the editing of shortcuts NEW ---
691127 -- Keyboard Navigation Keyboard shortcuts missing consistency on windows / linux UNCONFIRMED ---
1039744 -- Keyboard Navigation Control+Tab shortcut overrideable by web pages (e.g. Google Maps) NEW ---
1203890 -- DOM: UI Events & Focus Handling F11 doesn't exit DOM fullscreen if web page overrided that shortcut UNCONFIRMED ---
1303384 P2 Add-ons Manager Mark Striemer [:mstriemer] UI for re-assigning an extension's command shortcut VERIFIED FIXED mozilla66
1325692 P5 General [commands] Explicit support for overriding built-in keyboard shortcuts by WebExtensions NEW ---
1403295 P3 General Allow commands to call window actions such as "navigation reload" UNCONFIRMED ---
1416348 P5 Frontend Expand command API to include more characters and secondary modifiers NEW ---
1421811 P2 General Mark Striemer [:mstriemer] Provide a way for an extension to update the shortcut for its command VERIFIED FIXED mozilla60
1475043 P3 General Rob Wu [:robwu] Allow commands.update() to un-set a shortcut, disabling the command RESOLVED FIXED mozilla74
1483843 P5 Tabbed Browser an option to set “Reload all tabs” & “Duplicate tab(s)” keyboard shortcuts UNCONFIRMED ---
1574756 P3 Add-ons Manager Alt + A working as Ctrl + A and overriding the manual extension short-key provided to U-origin block NEW ---
1777254 P5 DOM: UI Events & Focus Handling Ctrl-Shift-N doesn't trigger `keydown` event for `N` key RESOLVED INVALID ---
1850312 P5 Widget: Cocoa Blocking "override keyboard shortcuts" doesn't work for shortcuts assigned using macOS Settings UNCONFIRMED ---

15 Total; 11 Open (73.33%); 2 Resolved (13.33%); 2 Verified (13.33%);


* bug 1303384 - UI for re-assigning an extension's command shortcut
Full Query
ID Priority Component Assigned to Summary Status Resolution Target milestone
1421811 P2 General Mark Striemer [:mstriemer] Provide a way for an extension to update the shortcut for its command VERIFIED FIXED mozilla60
1520068 P2 Frontend Mark Striemer [:mstriemer] Re-assigning to Ctrl+Page Up/Page Down executes shortcut VERIFIED FIXED mozilla67
1520119 P3 Frontend Rob Wu [:robwu] Support removing a shortcut in manage shortcuts VERIFIED FIXED mozilla74
1520123 P3 Frontend Trishul Notify users when there is a duplicate shortcut VERIFIED FIXED mozilla70
1520144 P3 Frontend “Menu bar” shortcuts can be overridden when assigned for the first time NEW ---
1520164 -- Frontend Mark Striemer [:mstriemer] Nightly: broken images for extensions without icons on 'Manage Extension Shortcuts' VERIFIED FIXED mozilla66
1521826 P2 Frontend Mark Striemer [:mstriemer] Handle extensions with lots of shortcuts in manage shortcuts VERIFIED FIXED mozilla67
1522227 P2 Add-ons Manager Trishul Prevent assigning a shortcut that is already assigned VERIFIED FIXED mozilla68
1522230 P1 Add-ons Manager Trishul Move keyboard shortcuts button into the more options menu VERIFIED FIXED mozilla66
1522757 P2 Add-ons Manager Trishul Remove addons with no shortcut from extension shortcut page VERIFIED FIXED mozilla67
1524296 P2 Add-ons Manager Record telemetry for manage shortcuts view RESOLVED FIXED ---
1532077 P1 Add-ons Manager Mark Striemer [:mstriemer] label for reconfiguring extension keyboard shortcut for browser action needs improved text, sounds like extension wouldn't do anything if it doesn't get called RESOLVED FIXED mozilla77
1684099 P5 Add-ons Manager Extension shortcuts should be possible to be set to any key, not just alphabetic keys which exist in the same place in the english ANSI layout NEW ---

13 Total; 2 Open (15.38%); 2 Resolved (15.38%); 9 Verified (69.23%);


Testcases

Overview

Summary of testing scenarios

Test Areas

Test Areas Covered Details
Installing from AMO
Installing from local files
Installing from thirdparty
Add-on updates
Sideloading
Other

Test suite


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 05-22-2018
Test Cases Creation 05-21-2018 N/A
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