首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >XCUITest使用Springboard测试本机Callkit UI。如何获取呼叫方标签?

XCUITest使用Springboard测试本机Callkit UI。如何获取呼叫方标签?
EN

Stack Overflow用户
提问于 2019-08-05 18:24:37
回答 1查看 314关注 0票数 2

我正在尝试在我们的应用程序中测试VOIP呼叫。我模拟一个呼叫,并尝试断言是否存在正确的呼叫者ID。但是,我无法使用以下命令访问呼叫者姓名标签"Bob“:

代码语言:javascript
复制
let springBoard = XCUIApplication(bundleIdentifier: "com.apple.springboard")
XCTAssert(springBoard.staticTexts["Bob‬"].waitForExistence(timeout: 10)) // Assertion fails

但是,如果我尝试访问其正下方的标签“*音频…”使用相同的调用传递断言:

代码语言:javascript
复制
XCTAssert(springBoard.staticTexts["*** Audio…"].waitForExistence(timeout: 10))

当我打印音频时,我找到了"Bob“和”* springBoard.debugDescription…“。在可访问性层次结构中,它们都是staticTexts:

正在测试的屏幕:

如何访问"Bob“标签并断言它是正确的呼叫者ID?

EN

回答 1

Stack Overflow用户

发布于 2019-08-05 21:06:30

我遇到了同样的问题。我使用带有LIKE的NSPredicate解决了这个问题,而不是只使用名字。我认为隐藏的字符被添加在名称周围。

代码语言:javascript
复制
            XCTAssert(springBoard.staticTexts.matching(NSPredicate(format: "label LIKE '*Bob*'")).firstMatch.waitForExistence(timeout: 10))

这对我有效,对你也应该有效。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/57356675

复制
相关文章

相似问题

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