QA/Mobile/FocusAndroidTestPlan: Difference between revisions

From MozillaWiki
< QA
Jump to navigation Jump to search
(v2.0 change)
Line 3: Line 3:
= Intro/Summary/Notes =
= Intro/Summary/Notes =
== Intro and Summary ==
== Intro and Summary ==
* This wiki outlines the test requirements for Focus for Android V1.
* This wiki outlines the test requirements for Focus for Android releases.
* Use this generalized Test Plan as a starting point for creating Plans, Suites, and Cases
* Use this generalized Test Plan as a starting point for creating Plans, Suites, and Cases


Line 10: Line 10:


== Feature Lists ==
== Feature Lists ==
* "Must" P1 features (as of May 2017 and subject to change):
For the list of features and its status, please refer to [https://github.com/mozilla-mobile/focus-android/projects/3 here].
** Provide tracking-free browsing experience
'Aqua' label refers to the issues that are slated for the next upcoming release
** Erase browsing history
** Enable/Disable blocking of different types of trackers
** Onboarding, we will highlight features that we believe will bring retention
** Per session blocking
** Custom tabs (scoped down)
** Show notification while browsing session is active
** Create localized completion list
** Setting to allow screenshots
** Support app shortcuts API


* P2 (if time permits, in order of priority)
* NOTE: Focus for Android bugs are maintained in [https://github.com/mozilla-mobile/focus-android/issues Github]
** Show number of ads/trackers blocked (4)
** Locale switcher for Android (5)
** Allow saving images in a website (4)
** Add "search" action into text selection of third-party apps (3)


* NOTE: Focus for Android bugs are maintained in [https://github.com/mozilla-mobile/focus-android/issues Github]
* ([https://github.com/mozilla-mobile/focus-android/issues?utf8=%E2%9C%93&q=is%3Aissue%20label%3Av1.0%20is%3Aissue%20label%3Afeature%20 List of complete P1 features in Github])


= Schedule =
= Schedule =
* All features for V1 should be completed by June 9th, 2017 to begin acceptance testing
* All features for 2.0 should be completed by Aug 4th, 2017 to begin acceptance testing
* Testing, including acceptance testing, should be completed by June 14th, 2017.
* Testing, including acceptance testing, should be completed by Aug 10th, 2017.
* Focus for Android is currently scheduled to be released June 20th, 2017.
* Focus for Android 2.0 is currently scheduled to be released Aug 17th, 2017.


= Personnel =
= Personnel =
Line 46: Line 31:
== QA Team ==
== QA Team ==
* [https://phonebook.mozilla.org/?search/No-Jun%20Park No-Jun Park]
* [https://phonebook.mozilla.org/?search/No-Jun%20Park No-Jun Park]
* [https://phonebook.mozilla.org/?search/Aaron%20Train Aaron Train]


= Resource Plan =
= Resource Plan =
Line 53: Line 37:
= Test Strategy =
= Test Strategy =
== Manual Tests ==
== Manual Tests ==
UI Test suite for Focus for Android will be located in [https://testrail.stage.mozaws.net/index.php?/suites/overview/48 TestRail]. As a minimum, each of the P1 features will have corresponding test cases. We will use Focus for iOS as a base.
UI Test suite for Focus for Android will be located in [https://testrail.stage.mozaws.net/index.php?/suites/overview/48 TestRail]. As a minimum, each of the P1 features will have corresponding test cases. The test suite will be executed by Softvision for the acceptance testing.


== Automated Tests ==
== Automated Tests ==
Automation tests will be mainly used for quick regression check of key UI features. Overall, automation tests will be added to the same Github repo, and executed on [https://dashboard.buddybuild.com/apps/584f67f6f3d6eb01000842d6 BuddyBuild CI system]. While the unit tests will be run for each commit, UI Tests (in Espresso framework) will be executed in master branch only.  The test result will be inspected for new failures, and github issue will be raised for tracking.
Automation tests will be mainly used for quick regression check of key UI features. Overall, automation tests will be added to the same Github repo, and executed on [https://dashboard.buddybuild.com/apps/584f67f6f3d6eb01000842d6 BuddyBuild CI system]. While the unit tests will be run for each commit, UI Tests (in Espresso framework) will be executed in master branch only.  The test result will be inspected for new failures, and github issue will be raised for tracking.
Following automation test cases will be added by end of the May:
* Accessing badly formed URL
* Accessing each of pull-down menu items
* Accessing simple webpages
* Changing search engine
* Checking for overall appearance
* Deleting browsing history
* Quick check of URL autocompletion
* Quick check of webview data deletion
* Quick check of Onboarding dialog (Pending)
* Custom tabs (Pending)
* Check notification while browsing session is active (Pending)


Automation tests are located [https://github.com/mozilla-mobile/focus-android/tree/master/app/src/androidTest here].
Automation tests are located [https://github.com/mozilla-mobile/focus-android/tree/master/app/src/androidTest here].
Line 87: Line 58:


== Test Deliverables ==
== Test Deliverables ==
* Completed TestRail Test suite which covers all P1 features with UI aspects  
* Completed TestRail Test suite which covers all features with UI aspects  
* Automated Test suite in master branch, running on every checkin
* Automated Test suite in master branch, running on every checkin
* Github issues for every issue found
* Github issues for every issue found
Line 126: Line 97:


= Signoff/Exit Criteria =
= Signoff/Exit Criteria =
* No open v1.0 bugs, which impacts the security and key operations of the app
* No critical or major UI bugs
* No critical or major UI bugs
* No easily reproducible crashes
* No easily reproducible crashes

Revision as of 19:48, 27 July 2017

This is the Test Plan for Focus for Android (https://github.com/mozilla-mobile/focus-android)

Intro/Summary/Notes

Intro and Summary

  • This wiki outlines the test requirements for Focus for Android releases.
  • Use this generalized Test Plan as a starting point for creating Plans, Suites, and Cases

Notes

Feature Lists

For the list of features and its status, please refer to here. 'Aqua' label refers to the issues that are slated for the next upcoming release

  • NOTE: Focus for Android bugs are maintained in Github


Schedule

  • All features for 2.0 should be completed by Aug 4th, 2017 to begin acceptance testing
  • Testing, including acceptance testing, should be completed by Aug 10th, 2017.
  • Focus for Android 2.0 is currently scheduled to be released Aug 17th, 2017.

Personnel

Program Management

Product Management

Development

QA Team

Resource Plan

  • Each QA person will be 40% allocated to this project

Test Strategy

Manual Tests

UI Test suite for Focus for Android will be located in TestRail. As a minimum, each of the P1 features will have corresponding test cases. The test suite will be executed by Softvision for the acceptance testing.

Automated Tests

Automation tests will be mainly used for quick regression check of key UI features. Overall, automation tests will be added to the same Github repo, and executed on BuddyBuild CI system. While the unit tests will be run for each commit, UI Tests (in Espresso framework) will be executed in master branch only. The test result will be inspected for new failures, and github issue will be raised for tracking.

Automation tests are located here.

In addition to regularly run automated tests, QA will also generate screenshots for l10n verification.

Code Analysis

  • Codecov is added to the github repo, and will display increase/decrease of unit test code coverage
  • Findbugs addon is added to warn developers against possible code issues, as well as Lint.

Outside Scope

Following tests are outside the scope of the QA:

  • Unit Tests
  • Performance Tests
  • Localization Tests
  • Beta testing with a wider audience

Test Deliverables

  • Completed TestRail Test suite which covers all features with UI aspects
  • Automated Test suite in master branch, running on every checkin
  • Github issues for every issue found
  • Manual acceptance test report
  • Signoff Decision

Testing Days

June 14th 2017:

July 14th, 2017 (Ioana Chiorean):

July 14th, 2017 (Oana Horvath):

Dependencies/Risks

  • Since the blocking status of trackers is not exposed via adb log or UI, its validation will rely on unit tests
  • The performance of Focus for Android is not measured precisely, will rely on the tester feedback
  • The tester pool for a preliminary first release will be extremely small
  • The automation/manual test suites will be built incrementally as new features are added to Github, and the late features may not be exposed to validation as much as earlier ones. The acceptance test after the feature completion date will be performed with the special emphasis on 1. key features and 2. most recently added features

Signoff/Exit Criteria

  • No critical or major UI bugs
  • No easily reproducible crashes