Page MenuHomePhabricator

Set up Tabs A/B test
Closed, ResolvedPublic3 Estimated Story Points

Description

Background

To effectively measure the impact of adding Tabs, we would like to run it as an A/B test with a limited audience.

Requirements
  • Limit the display of Tabs to these audiences who meet these criteria
    • Users with an App primary language of English, Arabic, or Japanese
    • Users with a device country within ESEAP or MENA regions (use these lists)
  • Within that audience, only 50% of users should see the entry point for Tabs
  • Sort users into the test upon first article view (not app launch, ensure testers can reach developer settings)
  • Stop sorting users into control and treatment on July 31
  • Tabs is not removed at end of test
  • Confirm with Instrumentation Deck and @SNowick_WMF on labeling of groups
Engineering Notes
  • Create A/B test logic (group assignment, post assignment to analytics). Check A/B test logic before displaying tabs entry point icon and long press options.
Testing notes

(A/B tests assignment testing)

Change the device region to a qualified region.

  • Fresh install app. Choose a qualified primary app language in onboarding
  • Tap into an article, you may or may not see the tabs icon.
  • Repeat steps 2-3. Ensure half of the time you see the tabs entry point, the other half you don't.

(Dev settings testing)

  • Fresh install app, this time on an unqualified device region or primary app language.
  • Ensure you don't see the tabs entry point.
  • Go to developer settings and force on the tabs toggle.
  • Ensure you do see tabs entry point.

(Date testing)

  • Temporarily change the end date to a date near in the future.
  • Fresh install on a qualified device region and primary app language. Repeat until you see tabs entry point to confirm you are in the test assignment.
  • Change device region to after end date in step 9.
  • Re-enter the app, you should still see the test behavior (tabs entry point).
  • Fresh install the app, relaunch. Ensure you cannot be assigned into test bucket.

Details

Other Assignee
Tsevener

Event Timeline

AB Test Requirements added to iOS Tabs AB Test Data Instrumentation deck as part of instrumentation task.

HNordeenWMF raised the priority of this task from Low to Medium.Apr 24 2025, 10:47 PM

@HNordeenWMF

Limit the display of Tabs to these audiences who meet these criteria
Users with an App primary language of English, Arabic, or Japanese
Users with a device country within ESEAP or MENA regions (use these lists)

Is this AND logic or OR? Is a user in a ESEAP / MENA region but app primary language = Spanish eligible?

Stop sorting users into control and treatment on July 31

Do you mean after July 31, users in these regions / primary app languages permanently see Tabs?

Tsevener set the point value for this task to 3.May 15 2025, 5:22 PM

@Tsevener

  • Most important is the device country filtering, so let's do that first. Then within those regions, anyone with the primary languages of English, Arabic, or Japanese. So yes to your example, but we wouldn't want someone whose primary language is Spanish but lives in the US.
  • I had imagined that after July 31, users who don't have tabs stay that way, and users who DO have tabs stay that way, but we don't let anyone new into the experiment. Is that possible? I'd like to consciously make it fully availalbe to that region after the results. If that's difficult, I'm ok with doing it as you say where users in these regions/languages permanently see Tabs at the end of the experiment
Seddon updated Other Assignee, added: Tsevener.

Testing on (7.7.6 (5357)

Expecting random sorting

  • Region = Japan, Primary language = English
    • Test, Test, Test, Test, Test, Test, Test, Control, Control, Control, Control, Test, Test
  • Region = Egypt, Primary language = Arabic
    • Control, Test, Test, Control, Control

Not expecting sorting

  • Region = US, Primary language = English
    • Control, Control, Control
  • Region = Egypt, Primary language = French
    • Control, Control, Control