QA/Activity Stream
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 |
|---|---|---|---|
| 01/25/2016 | 1.0 | Paul Oiegas | Created first draft |
| 02/16/2016 | 1.1 | Paul Oiegas & Vlad Bacia | Added general details form received documentation |
Overview
Purpose
Activity Stream is a broad effort to help users recover things they’ve found before, move easily between Firefox on different devices, and discover new things on the web. Trough this, we hope to increased engagement and users retention.
Test Pilot
We intend to use Test Pilot as the launch vehicle for the Activity Stream MVP. It will allow us to get into market quickly, solicit feedback from real users, and develop the product in a data driven way. Test Pilot will also help us acquire new users for our test and eventually allow us to smoothly migrate those users to this feature set in Firefox release.
Milestone 1
Enhanced Data
A key emphasis of Activity Stream is having richer data. This allows us to use more recognizable imagery and longer term allows us to use various page engagement signals to develop a deep understanding of what’s interesting to a user. We should begin by collecting the following data:
- Favicons (improve retention)
- Large favicons
- Full text of the content (Readability)
- Lead image URL from the full text
- Fixed word summary (first couple of sentences)
Addon key features
- Timeline
The timeline will be a new, core UI surface in Firefox. It is the eventual replacement for the current Library UI. It is a reverse chronological list of the most interesting pages you’ve visited and activities you’ve done in Firefox. This is a great way to interact with the content and tasks a user has interacted with over a short time horizon (48 hours). This also provides a single destination to find anything that you’ve done in the browser. Whether that be something as prosaic as visiting a site or something more nuanced as sharing a specific page with a specific user.
- New Tab
New Tab is an existing UI surface, but it is currently underutilized. We will keep the existing search access point. We will optimize the current Top Site’s tiles in order to allow for other content on new tab. We will show 6 smaller, fixed top sites with logos of the sites, when available. We will introduce two new sections: Recent Activity and Spotlight. Recent Activity will be a summary view of your timeline and provide the most recent actions you’ve taken (Bookmarks for now) and other interesting history. Spotlight will be a space for us to feature “nearly now” content along with recommended content in the future.
Milestone 2
Awesomebar
The Awesomebar is a critical part of the long term success of activity stream. Eventually we should replace frecency with a more nuanced understanding of interestingness to the user. Until then we should make minimal changes to the Awesomebar as the current frecency algorithm is very successful for many users. We should focus on improving recall rather than changing any core algorithm functions. This means better favicons and potentially other images as well.
Saving and Sharing
Our user research shows that people repeatedly share and return to content in the browser. We should embrace this by creating a flexible save and share toolbar menu. It should allow the user to share and save to the most common services such as Facebook or Pocket.
We can quickly provide this functionality on desktop by leveraging the existing “shareplane” and offer the most popular services as default options in our new saving and sharing menu. We should also include the existing features built into the browser such as “Email link...” and “Save to Pocket”. There should eventually be a “more” option at the end of this menu that connects the user with the built-in sharing options provided by their OS.
Android and iOS provide advanced sharing options at the system level and Firefox for Android and iOS both do a great job leveraging these systems. For the MVP we can rely on these existing integrations. In the future we should consider if we want to have Firefox specific share options on mobile.
Share and Save actions are high signal operations. The user is clearly indicating that something is important. We should flag shared URLs and add an activity entry to the timeline including as much detail as possible e.g. “Emailed this page to Bryan Bell”.
Scope
This wiki details the testing that will be performed for Activity Stream 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
Technical Program Manager contact: Edwin Wong
Engineering contact: Tim Spurway
Production contact: Nick Chapman
User Experience contact: Bryan Bell
QA:
Rares Bologa - PM for QA team
Paul Oiegas - leading QA efforts
Cosmin Muntean - QA
Paul Mircea Pasca - QA
Vlad Bacia - QA
Feature email address: Activity Stream
Testing summary
Scope of Testing
In Scope
Activity stream is an add-on that will comprise saved bookmarks, saved pockets and more in one place and it will display all the user activity organized in an reverse chronological timeline. This will allow the user to limit the displayed pages or domains from his activity. Also the add-on will provide more searching options based on favicons, images and keywords from the read article (first sentences from it).
The scope of our testing is the Activity Stream-desktop add-on and its functionality. The testing effort for Activity Stream will be invested on the following areas:
- integration: verify the add-on integration with the current browser functionalities and UI;
- functionality: basic and advanced functionality to be verified according to the existing requirements;
- usability: the Activity Stream timeline and New Tab content must be easy to use and straightforward;
Out of Scope
- The mobile implementation and testing is not yet documented. - Testing how Bookmarks and History are imported in the add-on functionalities ?
Requirements for testing
Environments
Testing will be performed on following OSes (both x86 & x64 infrastructures):
- Windows XP
- Windows 7
- Windows 8.1
- Windows 10
- Ubuntu 14.04
- Ubuntu 15.04
- Mac OS X 10.9
- Mac OS X 10.10
- Mac OS X 10.11
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 | - | - | - | - | - |
Builds
This section should contain links for builds with the feature -
- Nightly builds with the fix are available to the the link
- 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 | 01/25/2016 | |
| QA - Test cases/Env preparation | - | |
| 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 | Google docs |
| Test case execution | Google docs |
| 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
- Lack of documentation - for this kind of feature we should receive a Release Notes document, summing up at least a basic description of what is to be expected from the feature in that release.
References
- List and links for specs - no documents with specs was received.
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 |
| 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 -
- Smoke Test suite -
- Regression Test suite -
Bug Work
Tracking bug – meta bug
Bug fix verification
| Bug No | Summary | Status | Firefox Verion |
|---|---|---|---|
| - | - | - | - |
Logged bugs
-
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 suite -
- Full Test suite -
- 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 | ||
| Daily Status Report (email/etherpad statuses/ gdoc with results) | ||
| 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 |