Identity/DDT Smoke Test: Difference between revisions

Jump to navigation Jump to search
Update purpose and ordering of sections
(Initial population)
 
(Update purpose and ordering of sections)
Line 1: Line 1:
This document is taken from content on QA BrowserID TestPlan - https://wiki.mozilla.org/QA/BrowserID/TestPlan
This document is taken from content on QA BrowserID TestPlan - https://wiki.mozilla.org/QA/BrowserID/TestPlan
== Purpose ==
As BrowserID grows and the product becomes increasingly complex, it is a difficult task to introduce new features without also introducing bugs.  To help reduce the number of bugs that make it to prod as well as to ease some of the pain on our own QA team, we are introducing a WWE move - the DDT.  DDT (developer driven testing) is like jumping off the top rope to smash bugs before they have a chance to cause pain.
QA has a well defined set of tests they perform before qualifying any release as "ready for production."  We are going to use the Sanity/Acceptance/Smoke and Support for Primaries portions of their tests as the basis for DDT.  Functional and UI tests can also be run to ensure maximal flow coverage.  If each developer/contributor is able to run through the tests on a couple of desktop browsers and a couple of mobile browsers, we should be able to completely cover all A-Grade browsers.
Tests should be performed against both dev and staging.  123done.org will be the RP of choice once it is set up to handle all environments.  123done.org currently only supports staging.  Until 123done.org is ready, testing will take place using myfavoritebeer.org as the RP.
dev: http://dev.myfavoritebeer.org/
staging: http://beta.myfavoritebeer.org/


=== Sanity/Acceptance/Smoke ===
=== Sanity/Acceptance/Smoke ===
Line 6: Line 17:
* See the Test Cases (listed in the "Links and Documentation" section above) for more information.
* See the Test Cases (listed in the "Links and Documentation" section above) for more information.


* Server-side (https://diresworb.org/)
* Main Site (https://diresworb.org/)
** Sign Up with a new account and one email
** Sign Up with a new account and one email
*** Verify correct email verification sent to correct account (email provider)
*** Verify correct email verification sent to correct account (email provider)
Line 15: Line 26:
** Delete/Remove a current account with one email
** Delete/Remove a current account with one email


* Client-side (http://myfavoritebeer.org or http://123done.org using one desktop OS with one browser)
* Dialog (http://myfavoritebeer.org or http://123done.org using one desktop OS with one browser)
** Sign In using one RP/client to create a new account with one email
** Sign In using one RP/client to create a new account with one email
*** Verify correct email verification sent to correct account (email provider)
*** Verify correct email verification sent to correct account (email provider)
Line 27: Line 38:
** Delete/Remove the account from the server-side
** Delete/Remove the account from the server-side


* Client-side (http://myfavoritebeer.org or http://123done.org using Android with stock browser)
* Dialog (http://myfavoritebeer.org or http://123done.org using mobile browser)
** Sign In using one RP/client to create a new account with one email
** Sign In using one RP/client to create a new account with one email
*** Verify correct email verification sent to correct account (email provider)
*** Verify correct email verification sent to correct account (email provider)
Line 38: Line 49:
** Sign In to the same account and "sign out" by using the This is not me... link
** Sign In to the same account and "sign out" by using the This is not me... link
** Delete/Remove the account from the server-side
** Delete/Remove the account from the server-side
=== Support for Primaries ===
* Verify basic Primary support through the use of one or more test Primary sites
* Primary: https://eyedee.me/
* BrowserID tests (from Server or from RPs)
** Creating an account with Primary emails
** Creating an account with mixed emails (Primary/BID)
** Adding/Deleting a Primary email from a Primary account
** Adding/Deleting a BID email from a Primary account
** Adding/Deleting a Primary email from a BID account
** Adding/Deleting a BID email from a BID account
** Deleting an account with Primary emails
** Deleting an account with mixed emails (Primary/BID)
** Account Manager password changes on accounts with both primary and secondary emails
* Primary site UI flow
** General tests for navigating the site
** Include failures, cancellations, backing out


=== Basic Functional ===
=== Basic Functional ===
Manual and automated testing on the client and the server to verify basic functionality of BrowserID:
Manual and automated testing on the client and the server to verify basic functionality of BrowserID:
* Site Access - Stage
** Verify use of HSTS (for https:// only sites)
** Verify that the Stage server site can be accessed through secured HTTPS: https://www.diresworb.org/
** Verify that the Stage server site can not be accessed using only HTTP, but instead gets redirected to the HTTPS site: http://www.diresworb.org/
** Verify that the Stage RP/client site can be accessed through standard HTTP: http://beta.myfavoritebeer.org/ or http://123done.org
** Verify that the Stage RP/client site gets a certificate warning/error or is blocked when accessed through secured HTTPS: https://beta.myfavoritebeer.org/, http://123done.org
** Verify similar for the following RPs/clients:
*** carrera.databits.net:9999/


* Accounts and Email Verification
* Accounts and Email Verification
Line 75: Line 101:
*** Check functionality when BrowserID server is unavailable (down or user is off the net)
*** Check functionality when BrowserID server is unavailable (down or user is off the net)
*** Check functionality when BrowserID server is available but user has slow connection (like a public wifi)
*** Check functionality when BrowserID server is available but user has slow connection (like a public wifi)
** Stage server logs (if you have access)
*** Verify for each new email added, a verification string shows up in the browserid.log file
*** For example: {"level":"info","message":"\u001b[90mGET /add_email_address?token=p4FjEoHkwH4vNkUDPPFDrkS3uq58Faj01cGiZ1oGBY6MsyKt \u001b[32m200 \u001b[90m12ms\u001b[0m","timestamp":"2 Dec 13:45:54"}
*** It should look similar to the clickable verification link sent over email
*** For example: https://diresworb.org/add_email_address?token=p4FjEoHkwH4vNkUDPPFDrkS3uq58Faj01cGiZ1oGBY6MsyKt


* Accounts and Emails
* Accounts and Emails
Line 130: Line 151:
** Log in with different emails for different clients in the same browser/different browser
** Log in with different emails for different clients in the same browser/different browser
** Log in with the same email for different clients in the same browser, then log out from one of the browsers
** Log in with the same email for different clients in the same browser, then log out from one of the browsers
** Verify that the log in is kept when restoring a session after a browser crash (or after closing a browser with the session restore option selected (is this Firefox only?)
=== Support for Primaries ===
* Verify basic Primary support through the use of one or more test Primary sites
* Primary: https://eyedee.me/
* Other sites: TBD
* Links
* Verify all links on the Primary, especially if they open a new page/tab or replace the current page/tab
* Email and Password fields
** Email strings/types/limits
** Verify all legal combinations of characters for both "local name" and "domain name" parts of the email string
** Password strings/types/limits
* Direct Primary usage
** Signing in from Primary
** Sign-in redirection to Primary from an RP/client
** Sign-out from Primary
** Sign-out from Primary while signed into an RP/client
** Sign-out from Primary while signed into the Server site
* BrowserID tests (from Server or from RPs)
** Creating an account with Primary emails
** Creating an account with mixed emails (Primary/BID)
** Adding/Deleting a Primary email from a Primary account
** Adding/Deleting a BID email from a Primary account
** Adding/Deleting a Primary email from a BID account
** Adding/Deleting a BID email from a BID account
** Deleting an account with Primary emails
** Deleting an account with mixed emails (Primary/BID)
** Account Manager password changes on accounts with both primary and secondary emails
* Network interruptions: latency or Primary site being down
* Primary site UI flow
** General tests for navigating the site
** Include failures, cancellations, backing out
* Local Installs: run the check_primary_support script on eyedee.me, other Primaries, and at least one non-primary


* Regression: attempt Primary use with and without third-party cookie support set in the browser


=== UI ===
=== UI ===
Confirmed users
134

edits

Navigation menu