メールアドレス/パスワードをテキストフィールドに入力してからログインボタンを押すための UITest を作成しようとしています。Xcode を使用します。
UITest が適切なページに移動するのを見ていますが、テキスト フィールドが検出されません。両方のテキスト フィールドで [アクセシビリティ] ボックスがオンになっていることを確認し、それらに識別子を付けました。
次のエラーが表示されます。
UI テストの失敗 - テキスト フィールドに一致するものが見つかりませんでした
func testExample() {
let app = XCUIApplication()
//Test login page
app.buttons["loginButton"].tap()
//Here it navigates to the desired page
let emailField = app.textFields["email"]
emailField.tap()
emailField.typeText("xxx.xx.edu")
let passwordField = app.textFields["password"]
passwordField.tap()
passwordField.typeText("xxx")
app.buttons["loginButton"].tap()
// let loginAlert = app.alerts["alertVC"]
// XCTAssertEqual(loginAlert.title, "Error")
}
アクセシビリティ インジケーターは、それぞれ「メール」と「パスワード」です。シミュレーターを自分で実行すると、ログインは正常に機能します。
編集: どうやらテキスト フィールドがまったく (カウント = 0) 表示されていないにもかかわらず、ページで使用されているようです...
テキスト フィールドを含むストーリーボードの画像: