QA/Photon Structure
Approvals Required / Received
The following individuals are required to/have approved this Test Plan:
Name | Title | Department | Approval Date | Method |
---|---|---|---|---|
QA Manager | Product Integrity | Date | ||
Software Engineer | Engineering | Date | ||
EPM | Product Management | Date |
Revision History
Date | Version | Author | Description |
---|---|---|---|
06/28/2017 | 1.0 | Grover Wimberly IV | Created first draft |
08/10/2017 | 1.1 | Grover Wimberly IV | Added details to test plan |
Overview
Purpose
The purpose of this test plan is to
- Determine the scope of testing Photon Structure related bugs and features
- Delegate test responsibilities
- Have a test strategy for the levels and types of test for this release
- List entry and exit criteria
- Any risks, issues, assumptions and test dependencies
- List test schedule and major milestones
- List test deliverable(s)
Scope
The scope of this document is to test and verify new features/bugs in Photon Structure are working as intended. Testing is performed on the newest version of Nightly and tested on all three mainstream operating systems of Firefox Nightly. (Windows, Mac OSX, and Linux - Ubuntu Distribution).
Ownership
What resources are needed, and when (developers, QA, PMs working on the feature)
Testing summary
Scope of Testing
In Scope
Photon Structure - Including menus, buttons, toolbar, overflow panel, customization windows.
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 OS, Mac OSX, and Linux
Channel dependent settings (configs) and environment setups
Nightly
photon.structure.enabled = true (Default)
Beta
photon.structure.enabled = true
Post Beta / Release
photon.structure.enabled = true
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 | 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 |
2 | Repeat for each feature/sub-function | |||||
3 |
Builds
Up-to-date Nightly build
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 | June 2017 | TBA | |
QA - Test cases/Env preparation | Not applicable | Not applicable | |
QA - Nightly Testing | May 2017 | Not applicable | |
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 | Varies | ||
Multi-Process Enabled | Yes | ||
Multi-process Disabled | Depending on if tests fail | ||
Theme (high contrast) | Yes | ||
UI | |||
Mouse-only operation | Yes | ||
Keyboard-only operation | Yes | ||
Display (HiDPI) | Varies | ||
Interaction (scroll, zoom) | Varies | ||
Usable with a screen reader | Varies | ||
Usability and/or discoverability testing | Yes | ||
RTL build testing | Yes | ||
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 | Not applicable | ||
Does sync work across upgrades | Not applicable | ||
Requires install testing | Not applicable | ||
Affects first-run or onboarding | Not applicable | ||
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 to test rail - testcases should be added under Firefox Desktop project link Smoke Test suite - Link with the tests - if available/needed. Regression Test suite - Link with the tests - if available/needed.
Bug Work
Meta bug: 12345 - bug summary
Logged bugs ( blocking 12345 )
ID | Priority | Component | Assigned to | Summary | Status | Target milestone |
---|---|---|---|---|---|---|
15069 | P3 | Networking | jefft | File type url not correctly parsed and created | VERIFIED | M13 |
1 Total; 0 Open (0%); 0 Resolved (0%); 1 Verified (100%);
Bug fix verification
ID | Priority | Component | Assigned to | Summary | Status | Resolution | Target milestone |
---|---|---|---|---|---|---|---|
15069 | P3 | Networking | jefft | File type url not correctly parsed and created | VERIFIED | FIXED | M13 |
1 Total; 0 Open (0%); 0 Resolved (0%); 1 Verified (100%);
Sign off
Criteria
Checklist
- 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, 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 |