ios - XCTAssertEqual 测试在 ios 的 UI 测试中不起作用

标签 ios objective-c xctest xcode-ui-testing ui-testing

我有下面的 UI,我已经为其编写了 UI 测试用例 - enter image description here

如果我取消注释注释代码,我的测试不会成功,否则它会成功(XCTAssertEqual) 我可以知道如何检查屏幕上是否存在登录按钮,以及为什么 XCTAssertEqual 不起作用

func testExample() {

        let usernameTextField = app.textFields["Username"]
        usernameTextField.tap()
        usernameTextField.typeText("<a href="https://stackoverflow.com/cdn-cgi/l/email-protection" class="__cf_email__" data-cfemail="e7868584a7808a868e8bc984888a" rel="noreferrer noopener nofollow">[email protected]</a>")

        let passwordTextField = app.textFields["Password"]
        passwordTextField.tap()
        passwordTextField.typeText("abc123")

        app.buttons["Login" ].tap()

                //let loginButton = app.staticTexts["Login"]
                //XCTAssertEqual(loginButton.exists, true)

        app.navigationBars["UIView"].buttons["Back"].tap()


    }

最佳答案

查找登录按钮时,使用buttons而不是staticTexts。文本标签是按钮组件的一部分。

let loginButton = app.buttons["Login"]
XCTAssertEqual(loginButton.exists, true)

关于ios - XCTAssertEqual 测试在 ios 的 UI 测试中不起作用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/45651460/

相关文章:

ios - XCTAssert/XCTFail 在异步回调中安全吗?

ios - UITileLayer 显示忽略伪造的图层大小

iphone - 结合 Objective-C 和 C++ 的正确方法?

ios - XCUITest - 如何检查 webview 是否已更新其内容?

ios - 测试运行器未能加载测试包

ios - Xcode 服务器、机器人、持续集成和模拟器上的单元测试

ios - 以秒为单位的 2 个日期之间的差异 ios

iOS Google Maps API - 从另一个 View Controller 发送 GMSMapview

ios - 尝试滚动 UITableView 时出现异常

ios - AFNetworking 2.0 和单元测试