ios - XCTest 无法找到文本字段

标签 ios uitextfield xctest

我正在学习 XCTest 框架。我想测试文本字段是否接受数值或不[它不应该]。但是 XCTest 无法找到文本字段。

XCUIApplication().textFields["name"].typeText("123")
XCTAssertEqual(XCUIApplication().textFields["name"].title, "")

name 是文本框的占位符。我在这个演示应用程序中只有一个文本字段。但是测试总是在第一行测试代码上失败并且没有显示错误。

Note: I have made the appropriate code for not letting the textfield accept numeric values.

最佳答案

如果你想检查一个元素,第一步是检查它是否可以通过标识符访问。发生崩溃的原因是系统找不到名为“name”的文本字段。

您必须为该文本字段设置一个标识符。

yourTextField.accessibilityIdentifier = "myTextField"

现在,您可以通过字符串“myTextField”获取文本字段

XCUIApplication().textFields["myTextField"]

使用旁白/辅助功能检查器检查元素标签/值/标识符。

关于ios - XCTest 无法找到文本字段,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/47505997/

相关文章:

ios - Kal 日历演练

ios - 关于使用框架coreData

android - 是否可以在 iOS、Android、浏览器之间传输视频 p2p(或其他技术)

ios - 如何改变 UITextField 的形状?

ios - XCTestExpectation - 调用异步方法两次会导致 API 违规

swift - 在测试中模拟 UIView 扩展 "ApiProtocol"- swift4

ios - XCTestCase : UIApplication. shared.keyWindow 返回 nil

objective-c - 应该释放一个对象并将其设置为nil是原子的吗?

swift - 论问题结构的值(value)

iphone - 在具有安全文本输入的 UITextField 上忽略 UIKeyboardTypeNumbersAndPunctuation