QA/DateTimeInputTypes

From MozillaWiki
Jump to navigation Jump to 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
11/23/2015 1.0 Brindusa Tot 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 Date Time Input Types project. 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

Development
Manager: Wesley Huang (irc: wesley_huang)
Engineering Contacts: Jessica Jong (irc: jessica), Scott Wu(irc: scottwu)
UX Designers: Morpheus Chen (irc: Morpheus), Tina Hsieh (irc: Tina_Hsieh)
Visual Designer: Helen Huang (irc: hhuang)
TDC QA Contact: Cynthia Tang (irc: cynthiatang)

Engineering Team - Nightly Testing:
Rares Bologa (irc: RaresB) - PM for QA team
Brindusa Tot (irc: brindusat) - leading QA efforts
Simona Badau (irc: simonab) - QA
Liviu Cardei (irc: liviucirdei) - QA
Roxana Leitan (irc: RoxanaLeintan) - QA

Testing summary

Scope of Testing

In Scope

Date/Time Picker project enables the feature on Desktop where HTML input fields should contain a date or time or allow users to select a week in a year.

The Date/Time Picker project:
- aims to provide 5 basic input/pickers: date, month, time, date time, and week
- it's designed to meet the following HTML standard criteria including "Preset Value", "Preset List", "Step", and "Max/Min"
- takes care of localization and accessibility (Cursor Only, Cursor+Keyboard, or Keyboard only).

Out of Scope

RTL currently is not in the scope.
At the time being - only the Gregorian calendar is considered.

Requirements for testing

Environments

Full testing will be performed on the following OSes:

  • Windows
  • Mac OS X
  • Ubuntu

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 Date picker The date picker is properly displayed Default input field displays yyyy-mm-dd (varies based on locale) Manual Eng Team
2 Date picker functionality The date can be properly selected User can properly pick between years/months/days Manual Eng Team
3 Month/year picker The month/year picker is properly displayed Default input field displays yyyy-mm (varies based on locale) Manual Eng Team
4 Month/year picker functionality The month/year picker is properly selected User can pick month first then year, vice versa Manual Eng Team
5 Time picker The time picker is properly displayed Default input field displays --:-- -- (varies based on locale) Manual Eng Team
6 Time picker functionality The time picker is properly displayed User can pick 3 columns in any order: hour, minute, AM/PM Manual Eng Team
7 Week picker The week picker is properly displayed Default input field displays Week --, yyyy (varies based on locale) Manual Eng Team
8 Week picker functionality The week can be properly selected User can pick months/years and the highlight in input box will move to picked segment and change value simultaneously Manual Eng Team
9 DateTime-local picker DateTime local picker is properly displayed Default input field displays yyyy-mm-dd, -- : -- -- (varies according to date and time picker) Manual Eng Team
10 DateTime-local picker functionality DateTime local picker can be properly selected User can pick the date that will automatically trigger the time picker and vice versa Manual Eng Team
11 Localization Date/Time pickers are properly displayed on locale builds User can pick between pickers on locale builds Manual Eng Team
12 Accessibility Date/Time pickers are visible and usable from accessibility point of view Testing for accessibility includes:

- Cursor only
- Cursor + Keyboard
- Keyboard-only
- testing using high Contract themes
- Screen reader ???

Manual Eng Team

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

Eng team will follow up the milestone given by the developers team: Milestone link

The following table identifies the anticipated testing period available for test execution.

Project phase Start Date End Date
Start project 2016.09.12
Study documentation/specs received from developers 2016.09.12
QA - Test plan creation 2016.09.12
QA - Test cases/Env preparation 2016.09.12
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

 - UX specifications - link
 - Roadmap wiki page - link
 - demo presentation - link
 - webpage sample - link
 - QA Kick-off etherpad link

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
    • Daily Smoke, use template from link
    • Full Test suite, use template from link
    • 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
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