QA/Skia Content for Windows

From MozillaWiki
< QA
Jump to: navigation, search

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
10/27/2016 1.0 Mihai Boldan Created first draft

Overview

Purpose

Detail the purpose of this document. For example:

  • 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

This wiki details the testing that will be performed by the project team for the Skia Content for Windows project. Its purpose is to document:

  • What will be tested
  • How testing will be performed

Ownership

Engineering contacts: Mason Chang, :mchang on IRC

QA Lead: Mihai Boldan, :mboldan on IRC


Testing summary

Scope of Testing

In Scope

Skia content for Windows is planned to be shipped with Firefox 52 and it's enabled by default. This feature ensures the usage of Skia Graphics Engine when hardware acceleration is disabled, on Windows only.

The testing efforts will be invested on the following areas:

  • functionality:
    • making sure there are no regressions introduced by this change, by running graphics oriented tests;
    • comparing any potential issues side-by-side with an identical build that uses Cairo instead of Skia, with hardware acceleration disabled;
    • spot-checking Mac and Linux to make sure there are no unforeseen side-effects affecting these platforms as a result;
    • verifying bug fixes associated to this feature that are eligible for manual testing.
  • performance:
    • comparing browser performance (based on what a human eye can notice) side-by-side with an identical build that uses Cairo instead of Skia, with hardware acceleration disabled;
    • comparing browser performance (based on actual graphics benchmarks) side-by-side with an identical build that uses Cairo instead of Skia, with hardware acceleration disabled.
  • accessibility:
    • making sure there are no unexpected issues related to high-contrast themes, when compared to an identical build that uses Cairo instead of Skia, with hardware acceleration disabled.

Out of Scope

  • (note that this area is currently under assessment and the information here is not final)
  • Since this feature does not have any kind of UI exposed, there will be no testing conducted with UI in mind.
  • Although plug-in compatibility tests may also be covered through our tests, this area will not be part of our focus here.

Requirements for testing

Environments

Full Testing will be performed on:

  • Windows XP SP3
  • Windows 7
  • Windows 8.1
  • Windows 10

Exploratory/Smoke testing will be performed on

  • Windows XP SP3
  • Windows 7
  • Windows 10

Specify other configuration/environmental setup needed:

- Preference layers.acceleration.disabled set on true will modify "AzureContentBackend" to Skia in about:support.
- Preference layers.acceleration.disabled set on true and preference gfx.content.azure.backends set on cairo will modify "AzureContentBackend" to Cairo in about:support.

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
2
3
4
5
6

Builds

This section should contain links for builds with the feature:

  • Links for Nightly builds - TBD (the pref is not enabled by default in Firefox 52.0a2)
  • 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 10/27/2016
QA - Test cases/Env preparation 11/14/2016 11/14/2016
QA - Nightly Testing 11/15/2016 11/16/2016
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 Google docs/Test rail
Test case execution Test rail
Bugs management Bugzilla

Status

Overview

First releases to Nightly: The feature is disabled in Latest Nightly 52.0a2(2016-10-26)
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

  • Meta bug 1186552
  • Useful info related to this feature can be found at following: TBD

Testcases

Testcases can be found in Google Doc, or in Test rail

Test Areas

Test Areas Covered Details
Private Window Yes
Multi-Process Enabled Yes
Multi-process Disabled No
Theme (high contrast) Yes
UI
Mouse-only operation Yes
Keyboard-only operation Yes
Display (HiDPI) Yes
Interraction (scroll, zoom) Yes
Usable with a screen reader NO
Usability and/or discoverability testing YES
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 No
Does sync work across upgrades No
Requires install testing No separate feature/application installation needed (not only Firefox)
Affects first-run or onboarding No 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
Enterprise
Enterprise administration No
Network proxies/autoconfig No
ESR behavior changes No
Locked preferences No
Data Monitoring
Temporary or permanent telemetry monitoring No
Telemetry correctness testing No
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 No
Security
3rd-party security review No
Privilege escalation testing No
Fuzzing No
Web Compatibility
Testing against target sites Yes
Survey of many sites for compatibility Yes
Interoperability
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 No

Test suite

Full Test suite - Link with the gdoc, follow the format from Tests
Smoke Test suite - Link with the gdoc, follow the format from [link TBD]
Regression Test suite - Link with the gdoc - if available/needed.

Bug Work

Tracking bug – meta bug

Bug fix verification

Here's the list of the verified bugs for Skia Content For Windows [TBD]

Logged bugs

Here is the list of logged bugs [TBD]

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
    • Daily Smoke, use template from [link TBD]
    • Full Test suite, use template from [link TBD]
    • Regression Test suite, if needed/available

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 In progress
Test Cases Creation Done 11/14/2016
Full Functional Tests Execution
Automation Coverage
Performance Testing
All Defects Logged
Critical/Blockers Fixed and Verified
Daily Status Report (email/etherpad statuses/ gdoc with results)
Metrics/Telemetry
QA Signoff - Nightly Release GREEN Email sent in 11/16/2016
QA Aurora - Full Testing In progress
QA Signoff - Aurora Release Email to be sent
QA Beta - Full Testing
QA Signoff - Beta Release Email to be sent