Quantum/DOM/Test Plan
Contents
Overview
Purpose
To define what we want to test to verify the work for Quantum DOM doesn't break the Web. Release criteria and/or aspirational performance gains we expect to achieve will be tracked elsewhere
Scope
- We will test by regular browsing and notable the Alexa top 100 and sites with resources on the tracking protection list
- Testing with some of the prefs for the Quantum DOM work varied will also be done
Ownership
Developers: :billm, :smaug, :ehsan, :bevis, :farre Manager: :overholt QA: Paul Oiegas, Carmen Făt (and others?)
Testing summary
Scope of Testing
In Scope
The interaction of foreground and background tabs. The behavior of pages that are loaded in background tabs (e.g. Push messages should still work; background XHR things should still function (think GMail auto-refresh)).
Out of Scope
Browser UI issues. Anything that happens in a non-Quantum DOM build (e.g. website breakage, odd layout issues). When in doubt: file a bug :)
Requirements for testing
Environments
All tier 1 desktop operating systems. A variety of hardware capabilities (e.g. a low-power netbook and a high-spec laptop or desktop) would be nice but is not required. There are some prefs that will need to be flipped. More info. forthcoming.
I NEED TO EDIT EVERYTHING BELOW THIS
Channel dependent settings (configs) and environment setups
Nightly
text
Aurora
text
Beta
text
Post Beta / Release
text
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 | 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 | Eng Team |
2 | Repeat for each feature/sub-function | ||||
3 |
Builds
This section should contain links for builds with the feature -
- Links for Nightly builds
- Links for Aurora 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 - 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/ 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 Aurora 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
List and links for available specs - documents, user stories, specifications
- Meta bug
Testcases
Overview
Summary of testing scenarios
Test Areas
Test Areas | Covered | Details |
---|---|---|
Private Window | ||
Multi-Process Enabled | ||
Multi-process Disabled | ||
Theme (high contrast) | ||
UI | ||
Mouse-only operation | ||
Keyboard-only operation | ||
Display (HiDPI) | ||
Interraction (scroll, zoom) | ||
Usable with a screen reader | e.g. with NVDA | |
Usability and/or discoverability testing | Is this feature user friendly | |
RTL build testing | ||
Help/Support | ||
Help/support interface required | Make sure link to support/help page exist and is easy reachable. | |
Support documents planned(written) | Make sure support documents are written and are correct. | |
Install/Upgrade | ||
Feature upgrades/downgrades data as expected | ||
Does sync work across upgrades | ||
Requires install testing | separate feature/application installation needed (not only Firefox) | |
Affects first-run or onboarding | 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 | |
Enterprise | Raise up the topic to developers to see if they are expecting to work different on ESR builds | |
Enterprise administration | ||
Network proxies/autoconfig | ||
ESR behavior changes | ||
Locked preferences | ||
Data Monitoring | ||
Temporary or permanent telemetry monitoring | List of error conditions to monitor | |
Telemetry correctness testing | ||
Server integration testing | ||
Offline and server failure testing | ||
Load testing | ||
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 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 | ||
Privilege escalation testing | ||
Fuzzing | ||
Web Compatibility | depends on the feature | |
Testing against target sites | ||
Survey of many sites for compatibility | ||
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 | ||
Interaction of this feature with other browser features |
Test suite
Full Test suite - Link with the gdoc, follow the format from link Smoke Test suite - Link with the gdoc, follow the format from link Regression Test suite - Link with the gdoc - if available/needed.
Bug Work
Tracking bug – meta bug
Bug fix verification
Bug No | Summary | Status | Firefox Verion |
---|---|---|---|
123 | bug summary | NEW | Nighly 45 |
Logged bugs
Bug 111111
Bug 211111
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
Merge to Aurora 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 | ||
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 Aurora - Full Testing | ||
QA Signoff - Aurora Release | Email to be sent | |
QA Beta - Full Testing | ||
QA Signoff - Beta Release | Email to be sent |