Refactor iOS UI tests to blueprint architecture and migrate legacy suites
This commit is contained in:
33
iosApp/CaseraUITests/Tests/AccessibilityTests.swift
Normal file
33
iosApp/CaseraUITests/Tests/AccessibilityTests.swift
Normal file
@@ -0,0 +1,33 @@
|
||||
import XCTest
|
||||
|
||||
final class AccessibilityTests: BaseUITestCase {
|
||||
func testA001_OnboardingPrimaryControlsAreReachable() {
|
||||
let welcome = OnboardingWelcomeScreen(app: app)
|
||||
welcome.waitForLoad()
|
||||
|
||||
app.buttons[UITestID.Onboarding.startFreshButton].waitUntilHittable(timeout: defaultTimeout)
|
||||
app.buttons[UITestID.Onboarding.joinExistingButton].waitUntilHittable(timeout: defaultTimeout)
|
||||
app.buttons[UITestID.Onboarding.loginButton].waitUntilHittable(timeout: defaultTimeout)
|
||||
}
|
||||
|
||||
func testA002_LoginControlsRemainOperable() {
|
||||
let login = TestFlows.navigateToLoginFromOnboarding(app: app)
|
||||
|
||||
app.textFields[UITestID.Auth.usernameField].waitUntilHittable(timeout: defaultTimeout)
|
||||
app.secureTextFields[UITestID.Auth.passwordField].waitUntilHittable(timeout: defaultTimeout)
|
||||
app.buttons[UITestID.Auth.loginButton].waitUntilHittable(timeout: defaultTimeout)
|
||||
|
||||
login.tapPasswordVisibilityToggle()
|
||||
login.assertPasswordFieldVisible()
|
||||
}
|
||||
|
||||
func testA003_CoreControlsExposeIdentifiers() {
|
||||
let login = TestFlows.navigateToLoginFromOnboarding(app: app)
|
||||
_ = login
|
||||
|
||||
XCTAssertTrue(app.textFields[UITestID.Auth.usernameField].exists)
|
||||
XCTAssertTrue(app.secureTextFields[UITestID.Auth.passwordField].exists || app.textFields[UITestID.Auth.passwordField].exists)
|
||||
XCTAssertTrue(app.buttons[UITestID.Auth.signUpButton].exists)
|
||||
XCTAssertTrue(app.buttons[UITestID.Auth.forgotPasswordButton].exists)
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user