mozilla-mobile/firefox-ios

[UI Test] Convert JumpBackInTests to new framework

Geschlossen

#33.728 geöffnet am 11.05.2026

 (1 Kommentar) (0 Reaktionen) (1 zugewiesene Person)Swift (3.203 Forks)batch import
Contributor OKGood first issueeng:tae-conversion

Repository-Metriken

Stars
 (12.950 Sterne)
PR-Merge-Metriken
 (Durchschn. Merge 3T 2h) (221 gemergte PRs in 30 T)

Beschreibung

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