在 XCTest 中的 UI 测试中从 TextView 获取文本
Getting text from TextView in UI test in XCTest
我正在尝试 XCode 进行 iOS UI 测试。我的测试应用程序有 UITextView 元素,具有可访问性标识 displayTextView
。
我尝试了简单的测试,点击这个元素,输入一些文本,然后通过以下方式检查结果:
XCUIElement *textView = app.textViews[@"displayTextView"];
[textView tap];
[textView typeText:@"9.9"];
有效。但是后来我无法从文本视图中获取键入的文本。我尝试通过以下方式做到这一点:
XCTAssertEqual([textView.accessibilityValue isEqualToString:@"9.9"]);
但似乎不正确,因为textView.accessibilityValue 为空。
哪种方法适合获取键入的文本?
我找到了答案。正确的方法是:
XCTAssert([textView.value isEqualToString:@"9.9"]);
或let text = textView.value as! String
我用过:
let expectedValue = "Hello World!"
XCTAssert(app.staticTexts[expectedValue].isHittable)
使用这种方法,我们寻找显示 expectedValue
的标签,并验证它是否可见...
我正在尝试 XCode 进行 iOS UI 测试。我的测试应用程序有 UITextView 元素,具有可访问性标识 displayTextView
。
我尝试了简单的测试,点击这个元素,输入一些文本,然后通过以下方式检查结果:
XCUIElement *textView = app.textViews[@"displayTextView"];
[textView tap];
[textView typeText:@"9.9"];
有效。但是后来我无法从文本视图中获取键入的文本。我尝试通过以下方式做到这一点:
XCTAssertEqual([textView.accessibilityValue isEqualToString:@"9.9"]);
但似乎不正确,因为textView.accessibilityValue 为空。 哪种方法适合获取键入的文本?
我找到了答案。正确的方法是:
XCTAssert([textView.value isEqualToString:@"9.9"]);
或let text = textView.value as! String
我用过:
let expectedValue = "Hello World!"
XCTAssert(app.staticTexts[expectedValue].isHittable)
使用这种方法,我们寻找显示 expectedValue
的标签,并验证它是否可见...