QA/BrowserID/BrowserID Weekly Trains Beta
From MozillaWiki
Back To ==> Mozilla BT Services
- Legend:
- RP = Relying Party (think test client)
- PIA/IP = Primary Identity Authority or Implementation Provider (think test server)
- Seconary Identity Authority = none yet
Contents
- 1 Overview and Purpose
- 2 Main Links
- 3 QA Test Documents
- 4 Schedules
- 5 Weekly Meetings
- 6 GitHub Access
- 7 Email/Group Access
- 8 Bugs and Issues
- 9 Bugs and Open Issues
- 10 Filing Issues Against BrowserID
- 11 Reporting Results and Status
- 12 QA Test/Automation Environment
- 13 BrowserID Test Cases in MozTrap
- 14 BrowserID Automation
- 15 Dev, Stage, and Production Environments
- 16 Browser and Mobile Support
- 17 Profiles and Accounts: BrowserID
- 18 Testing Firefox Channels
- 19 Using Browser Tools
- 20 Deep-Dive Documentation
Overview and Purpose
- This wiki is set up to help QA with the background and information necessary to perform weekly testing of BrowserID.
- Use this wiki alongside the BrowserID Test Plan, automation tools, and other materials for the completion of testing and reporting of results to the BrowserID team.
Main Links
NOTE: This section needs to get updated
- Main information site: https://wiki.mozilla.org/Identity
- Main blog site: http://identity.mozilla.com/
- Quick tutorial/demo: https://browserid.org/about
- A better introduction to the client-server model: http://lloyd.io/how-browserid-works
- And here: https://github.com/mozilla/browserid/wiki/How-BrowserID-Works
- And, a good introduction to the original client-side: https://github.com/lloyd/myfavoritebeer.org
- Scaling BrowserID support: https://github.com/mozilla/browserid/wiki/Scaling-to-1M
- How PIAs work: http://lloyd.io/primary-identity-authorities-in-browserid
- Technical background: https://wiki.mozilla.org/Identity/BrowserID
- SUMO's great introduction to BrowserID
- BrowserID GitHub sites
- Support for Primaries
- http://lloyd.io/primary-identity-authorities-in-browserid
- https://github.com/lloyd/lloyd.io/blob/master/posts/2011-10-17-primary-identity-authorities-in-browserid.md
- https://github.com/mozilla/browserid/blob/dev/docs/PRIMARY_PROTOCOL.md
- https://github.com/mozilla/browserid/blob/dev/scripts/check_primary_support
- https://github.com/lloyd/eyedee.me
- https://wiki.mozilla.org/Identity/BrowserID
QA Test Documents
- QA Test Plan
- BrowserID Platform/OS/Browser Support Matrix
- Trains and Deployment Tickets
- Test Cases in Moztrap:
Schedules
- BrowserID testing runs on a bi-monthly "train" or schedule:
- (Day 1 / Day 15) Wednesday afternoon: deployment of current train to Production
- (Day 2-3) Thursday/Friday: open testing and experimentation on Dev environment
- (Day 3) Friday afternoon: deployment of next train to Stage
- (Day 6-10) Following week: Monday - Friday: QA testing
- (Day 13-14) Third week: Monday - Tuesday: Final QA testing and sign off of current deployment
- (Day 14) Tuesday : Rebuild next train with new localizations and deploy to Stage one day ahead of the Day 15 production deploy
- NOTE: Dev deployments are now back in the hands of the Dev team, so they can control incremental builds and releases. Tuesday is also the day to rebuild the rpm with the updated translations for L10N, and a re-deploy of that to stage.
- NOTE 2: Continuous integration is done with travis-ci.org; commits and pull requests exected the back, back_mysql and front tests, with work underway to execute selenium tests as well.
Weekly Meetings
- BrowserID Team Meeting: Mondays, 12:30pm PST/PDT in GiGo
- BrowserID Bug Triage Meeting: Thursdays, 9:30am PST/PDT in JK
GitHub Access
- You will need GitHub general access (an account).
- Then, you will need read/write access to the following GitHub sites:
Email/Group Access
- Services QA
- Sign up for services-qa@mozilla.com (talk to Tony Chung to get added)
- Use this email list for test and QA-related questions and information.
- BrowserID/Identity email list
- Sign up for access to dev-identity: https://lists.mozilla.org/listinfo/dev-identity
- Use this email list for general questions and issues specific to BrowserID.
- Email will be sent out to all members of this list including QA, Dev, Security, UI, and PM.
- BrowserID Google group (which is hooked to the email list)
Bugs and Issues
Bugs and Open Issues
- Security, OPs, and Apps-related bugs in Bugzilla
- Classification: Client Software
- Component: Server: Identity
- Product: Mozilla Services
- Deployment Requests in Bugzilla
- Classification: Client Software
- Product: Mozilla Services
- Component: Operations: Deployment Requests
- Product Issues and Bugs: GitHub
- BrowserID: https://github.com/mozilla/browserid/issues
- RP/Client: https://github.com/lloyd/myfavoritebeer.org/issues
- RP/Client: https://github.com/mozilla/123done/issues
- Primary: https://github.com/lloyd/eyedee.me
- Primary: https://github.com/callahad/mockmyid
Filing Issues Against BrowserID
Since GitHub is being used for recording all bugs/issues, please use the following template to better match the fields we would normally use in Bugzilla:
- Bug Number: Issue # is generated by GitHub
- Title: similar as with Bugzilla
- CC: GitHub will list the creator of the issue and pass it along to everyone associated with BrowserID, so there is no need to CC anybody or email anybody with the issue information.
- QA Contact: Assume that you, or the QA team as a whole, will be the contact for this issue.
- Platform information
- Platform or mobile device used for testing (examples: Mac, PC, phone, tablet)
- OS version (examples Windows, Mac, Android, iOS)
- Browser and version, plus any specific Add-Ons you installed
- (examples: FireFox, Safari, IE, Google Chrome, Opera)
- Test Environment: Stage, Dev, and/or Production
- Description
- Include background on issue and include steps to reproduce.
- Include information on whether or not this was checked against Dev or Prod environments.
- Include information on whether or not this was checked against other platforms, OS version, browsers, etc.
- Additions:
- For regressions, please put "[regression]" at the beginning of the Title
- For locale bugs, please put the Locale and country code at the beginning of the Title
- Example: Italian [it]: I saw this bug...
- For Dev environment bugs, please add "Dev:" at the beginning of the Title
- For local install bugs, please add "Local Install:" at the beginning of the Title
- For load test bugs, please add "load_gen:" at the beginning of the Title
Reporting Results and Status
- Use MoPad to report both train test results and weekly status for BrowserID:
- mozbtech-<DATE>
- (where <DATE> is the current week as set by Browser Technologies QA team)
- Questions and comments should go to the email lists mentioned above...
QA Test/Automation Environment
NOTE: This section needs to get updated.
- qa3.mtv1.dev.svc.mozilla.com (IP=10.250.64.149)
- Note, this VM has not been set up yet, but will include an auto-process for deploying BrowserID builds (all-in-ones) so that it can be used as RP/client and server.
- Installing a BrowserID Server
- Used for QA testing, tools development, and automation.
- This is planned for a QA server HW that has yet to be ordered.
- Installing a BrowserID Client
- Used for QA testing, tools development, and automation.
- This is planned, but not currently scheduled.
- More more information
- Automation information
BrowserID Test Cases in MozTrap
- Test Cases in Moztrap: https://moztrap.allizom.org/manage/cases/
- Product = BrowserID
BrowserID Automation
- All BrowserID automation is currently being handled by the WebQA team. For more information, see the following link:
Dev, Stage, and Production Environments
- See the BrowserID Test Plan for more information
Browser and Mobile Support
- See the BrowserID Test Plan and the Support Matrix for more information about mobile devices and required testing.
- Clearing BrowserID settings
- Safari:
- History > Clear History
- Empty Cache
- Preferences > Privacy > Remove All Website Data
- FireFox: Prefs > Privacy > Change History to "Use custom settings for history" > Clear history when Firefox closes > Settings > select all settings
- Google Chrome: Tool icon > History > Edit items > Clear all browsing data
- Opera: Preferences > Advanced >
- History > Addresses > Clear
- History > Disk Cache > Empty Now
- Cookies > Delete new cookies when exiting Opera
- NOTE: Still need to add the steps for mobile browsers on iOS and Android.
Profiles and Accounts: BrowserID
- Profiles
- It is highly recommended to create accounts/profiles per OS/platform and per browser to really expand on various testing scenarios.
- FireFox: use the -ProfileManager option to create specific test profiles
- Other browsers: TBD
- Mobile: may not be applicable or necessary
- Accounts
- Create unique accounts across OS/platform and browser for specific testing scenarios
- BrowserID accounts can be created uniquely for each test or can be grouped by OS, by platform, by browser, etc.
- Emails
- Use the free and the more popular email services/servers to generate test email accounts
- Examples: ISPs, Yahoo, Gmail, HotMail, Mailinator, etc.
- Broaden the use of each email account by creating multiple emails using the +TEXT string
- Examples: mymail+test1@yahoo.com, mymail+test2@yahoo.com, mymail+test3@gmail.com
- Use the free and the more popular email services/servers to generate test email accounts
- Passwords
- BrowserID should have a requirement now for password strings between 8 and 80 characters, inclusive.
- Unique passwords of both weak and strong categorization should be created and used for testing.
- Passphrases are also acceptable for testing: groups of characters rather than a seemingly random selection, as is required by most authentication systems.
Testing Firefox Channels
Along with the Platform/OS/Browser test matrix, all Firefox live versions (channels) should be used for testing:
FireFox Release (example 13.0)
- http://www.mozilla.org/en-US/firefox/fx/
- (Or similar for localized versions)
FireFox Beta (example 14.0)
- http://www.mozilla.org/en-US/firefox/channel/
- (Or similar for localized versions)
FireFox Aurora (example 15.0)
- http://www.mozilla.org/en-US/firefox/channel/
- (Or similar for localized versions)
FireFox Nightly (example 16.0)
Using Browser Tools
- On the FireFox browser, various tools can be used to help test/verify BrowserID:
- Tools > Web Developer > Web Console: can be used to track live GET and POST messages from the RP (client) site.
- Tools > Web Developer > Error Console: to track any errors, warnings, or messages from the RP (client) site.
Deep-Dive Documentation
NOTE: This section needs to get updated
- https://github.com/mozilla/browserid
- https://github.com/mozilla/browserid/issues
- https://github.com/mozilla/browserid/wiki
- https://github.com/mozilla/browserid/tree/dev/tests
- https://github.com/lloyd/myfavoritebeer.org/
- https://github.com/lloyd/node-browserid
- https://github.com/mozilla/browserid/wiki/How-to-Use-BrowserID-on-Your-Site
- https://wiki.mozilla.org/Identity/BrowserID/ServerImplementation
- https://github.com/mozilla/browserid/wiki/Scaling-to-1M
- https://github.com/mozilla/browserid/wiki/BrowserID-Libraries
- https://github.com/lloyd/browserid_ncfs
- https://github.com/mozilla/browserid/wiki/Advanced-BrowserID-Features
- https://wiki.mozilla.org/Identity/BrowserID/FAQ
- https://wiki.mozilla.org/Identity/EngPlan
- https://wiki.mozilla.org/Identity/EngPlan/VESEngPlan
- https://wiki.mozilla.org/Identity/EngPlan/wVEC
- https://wiki.mozilla.org/Identity/EngPlan/fVEC
- https://wiki.mozilla.org/Identity/Verified_Email_Protocol
- https://wiki.mozilla.org/Identity/Verified_Email_Protocol/Session_API
- https://wiki.mozilla.org/Identity/Verified_Email_Protocol/Latest
- https://wiki.mozilla.org/Identity/Verified_Email_Protocol/Latest-Session
- http://www.open-mike.org/entry/verified-email-protocol
- https://wiki.mozilla.org/Identity/Features
- https://wiki.mozilla.org/Identity/Features/Mobile_Firefox_Verified_Email_Client
- https://wiki.mozilla.org/Identity/Doc-signing_use-cases
- http://identity.mozilla.com/post/7669886219/how-browserid-differs-from-openid
- https://wiki.mozilla.org/Security/Users_and_Logs
- https://wiki.mozilla.org/Security/Users_and_Logs#How_to_Log_Events_-_Non-CEF_Library
- https://wiki.mozilla.org/Identity/BrowserID/TransitioningSites
- http://mozilla.github.com/browserid-field-guide/real_world_implementations.html
- https://github.com/shane-tomlinson/browserid-profile
Back To ==> Mozilla BT Services