mozilla-mobile/firefox-ios

[UI Test] Convert JumpBackInTests to new framework

Closed

#33728 opened on May 11, 2026

View on GitHub
 (1 comment) (0 reactions) (1 assignee)Swift (12,950 stars) (3,203 forks)batch import
Contributor OKGood first issueeng:tae-conversion

Description

Description

The Mobile test eng team is transitioning UI test automation to the TAE framework as part of improving scalability and developer productivity.

We will be opening different issues per test suite to get help with this migration.

JumpBackInTests

3 tests, all with heavy navigator.goto(TabTray) / navigator.performAction / navigator.openURL usage. The Jump Back In section is part of the homepage, following the same pattern as NewsScreen. Needs 2 new files.

New Selectors/JumpBackInSelectors.swift and PageScreens/JumpBackInScreen.swift with the following methods:

  • scrollToJumpBackInSection() — replaces the scrollDown() helper (swipes up until "Switch Your Default Browser" is gone on iPhone)
  • assertSectionExists()
  • assertItemExists(title:) / assertItemNotExists(title:)
  • tapItem(title:)
  • longPressFirstItem()
  • assertContextMenuExists() — validates context menu has new tab, private, bookmark, share buttons

Changes to JumpBackInTests.swift:

  • Add jumpBackInScreen, browserScreen, toolbarScreen, tabTrayScreen + setUp()
  • Replace scrollDown() and closeKeyboard() helpers with screen calls
  • Replace all navigator.* calls — mapping:
    • navigator.openURL(...) → browserScreen.navigateToURL(...)
    • navigator.goto(TabTray) → toolbarScreen.tapOnTabsButton()
    • navigator.performAction(Action.OpenNewTabFromTabTray) → tabTrayScreen.tapOnNewTabButton()
    • navigator.toggleOn(userState.isPrivate, ...) → tabTrayScreen.switchToPrivateBrowsing() (already exists)
    • navigator.toggleOff(userState.isPrivate, ...) → new tabTrayScreen.switchToRegularBrowsing() (add to TabTrayScreen)
    • navigator.nowAt(...) → remove

Also needs a new tabTrayScreen.closeTab(title:) method in TabTrayScreen to replace the inline #available block that closes a tab by title.

Documentation Wiki: https://github.com/mozilla-mobile/firefox-ios/wiki/Test-Automation-Efficiency-UI-Testing-Guide-for-Firefox-iOS

Examples All UI tests that have the // Smoketest comment are good to look at since those have been migrated.

Thank you!

┆Issue is synchronized with this Jira Task

Contributor guide