|
|
| Line 1: |
Line 1: |
| = Stub Attribution Notes/Test Plan (scratchpad) =
| | Road to Single (prod) Jenkins |
| | |
| = Dependencies (tools/systems): =
| |
| * [https://github.com/mozilla-services/go-bouncer Bouncer]
| |
| * Mozilla.org ([https://github.com/mozilla/bedrock Bedrock])
| |
| * [https://wiki.mozilla.org/Telemetry Telemetry]
| |
| | |
| == Questions: ==
| |
| # All ([https://www.mozilla.org/en-US/firefox/48.0.2/system-requirements/ supported]) Windows platforms, or?
| |
| # Which Firefox editions?
| |
| ## [https://www.mozilla.org/en-US/firefox/developer/ Developer Edition]?
| |
| ## [https://www.mozilla.org/en-US/firefox/organizations/all/ Firefox Extended Support Release Edition]?
| |
| # How to test (all five?) codes/fields?
| |
| ## Source
| |
| ## Medium
| |
| ## Campaign
| |
| ## Content
| |
| ## "Referrer" alone?
| |
| # Do Not Track support
| |
| ## How/does JavaScript-disabled interplay with DNT?
| |
| ### Which specific browsers (vendors + versions) properly support it/if have it enabled, we'll honor the setting?
| |
| # Which locale(s)?
| |
| # Entry-points on Mozilla.com. Which page(s)? Or all download pages?
| |
| ## https://www.mozilla.org/en-US/firefox/all/
| |
| ## https://www.mozilla.org/en-US/firefox/new/?scene=2 (and do the ?scene=[] parameters matter?)
| |
| # JavaScript enabled *and* disabled cases?
| |
| ## Should the attribution code(s) be present on Download buttons when JavaScript is disabled?
| |
| # How/who checks the Telemetry ping from the client? Via Dashboard?
| |
| # Do we need to cover the upgrade-path scenario? i.e.:
| |
| ## user downloads and installs using the special stub installer w/tracking code
| |
| ## we verify correct pings, etc.
| |
| ## user upgrades later to a newer version of Firefox (pave-over install)
| |
| ### do we still check for this ping?
| |
| # How about the successfully installed, then uninstalled case: check to see that client no longer sends ping?
| |
| | |
| == Manual Tests: ==
| |
| # Positive (happy-path) Tests:
| |
| ## Do Not Track disabled
| |
| ##* Click an ad banner or link which has an attribution (source? medium? campaign? content? referrer?) code
| |
| ##* Verify that the URL which takes you to a Mozilla.org download page contains a stub_attcode with a valid param
| |
| ##* Verify that the same valid stub_attcode param/value gets passed to the Mozilla.org Download Firefox button
| |
| ##* Download and install the stub installer
| |
| ##* Verify (how?) that upon successful installation, the stub installer sends a "success!" ping with the same stub_attcode param/value
| |
| ##* Verify (need specific Windows registry key, here) that the stub_attcode gets written to the registry/on-disk (need to double-check this) with appropriate value(s)
| |
| ##** '''...which are?'''
| |
| | |
| == Negative Tests: ==
| |
| # Ensure other installers/binaries '''don't''' have/pass on the URL param/stub code
| |
| ## e.g. Mac, Linux, full Firefox for Windows installers
| |
| # Much, much more to flesh out, here
| |
| | |
| == Test Automation Coverage: ==
| |
| * What will the Bedrock unit tests cover?
| |
| ** Where/how frequently will they run? With each pull request/commit/release?
| |
| * What will the Bouncer tests cover?
| |
| ** Where/how frequently will they run? With each pull request/commit/release? On a cron?
| |
| {{VerifiedUser}}
| |
| | |
| = References =
| |
| * [https://wiki.mozilla.org/Firefox/Stub_Attribution Stub Attribution wiki]
| |
| * [https://docs.google.com/document/d/1H59-4zfw0OAFyqfJw71dI0jD7Z-NLvLyowPw6pNhAVs/edit?ts=56e9d8db Stub Attribution Project Plan] (Google Doc)
| |
| * [https://docs.google.com/document/d/1Y8PYGk6IK19N4-2IqoBK3Eiq9BPc6vV0pfGGiqmYOjM/edit#heading=h.72syj6m0u12d Stub Attribution project's checkin notes] (Google Doc)
| |