首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何在XCTestCase中键入UITextView

如何在XCTestCase中键入UITextView
EN

Stack Overflow用户
提问于 2017-06-03 02:20:07
回答 2查看 2.4K关注 0票数 6

如何在XCTestCase中输入UITextViewUITextView是第一个响应器,所以它已经有了焦点,键盘已经打开了。

我试过了:

代码语言:javascript
复制
app.typeText("footer")
app.textViews.element(boundBy: 0).typeText("foobar")
app.links.element(boundBy: 0).typeText("foobar")

由于某种原因,app.textViews.count总是返回0

EN

回答 2

Stack Overflow用户

发布于 2017-06-06 03:44:06

问题不在于.typeText(_:)不能工作,而在于您的查询不能解析为元素。

当您试图查找的视图位于某种可访问的容器视图中时,有时看起来查询似乎不能正常工作。您可以通过在容器视图中显式禁用可访问性来缓解此问题。

将包含文本视图的堆栈视图设置为不是辅助功能元素,然后在文本视图上设置辅助功能标识符。

代码语言:javascript
复制
// app code
let stack: UIStackView!
let textView: UITextView!
stack.isAccessibilityElement = false
textView.isAccessibilityElement = true
textView.accessibilityIdentifier = "myTextView"

// test code
let app = XCUIApplication()
let textView = app.textViews["myTextView"]
textView.typeText("something")
票数 7
EN

Stack Overflow用户

发布于 2017-06-03 02:49:07

尝试为您的UITextView设置唯一的,然后:

代码语言:javascript
复制
let textView = app.textViews["uniqueId"]
XCTAssert(textView.exists, "uniqueId text view NOT FOUND")
textView.tap()
textView.typeText("foobar")
票数 3
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/44335210

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档