iOS UITests - 检测是否有任何 XCUIElement 在当前运行中被点击过

标签 ios xcode unit-testing testing xcode-ui-testing

在 iOS、UITest 上工作时,我如何检测特定的 XCUIElement 是否已被点击?

例如,

let app = XCUIApplication()
let button1 = app.tabBars.buttons["Home"]
button1.tap()
let button2 = app.tabBars.buttons["Home"].tap()
button2.tap() // Here, I want to detect button2 as already tapped

最佳答案

XCUIElement.isEnabledXCUIElement.isSelectedXCUIElement.value 可以为您提供有关元素的状态信息。

如果您希望按钮打开/关闭,请在 UIControl(UIButton 继承自 UIControl)上使用启用或选择状态来设置这些属性并通过 XCUIElement 从您的测试中访问它们。

如果您希望按钮计算它被点击的次数,请在每次点击时增加应用中的值,并访问测试中的 value 属性。

关于iOS UITests - 检测是否有任何 XCUIElement 在当前运行中被点击过,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/42508013/

相关文章:

ios - 意外的 CFBundleExecutable key

ios - 如何在 Swift 中显示 3 秒后消失或可由用户立即取消的弹出消息?

ios - 继续记录丢失的服务器连接以获取 kct 连接无效通知

ios - 在后台检测应用程序是否已启动

java - 在单元测试中使用多少个线程?

ios - 自定义 UIGestureRecognizer 未按预期工作

ios - 无法隐藏状态栏—Swift 3,

ios - 没有找到合适的申请记录。验证您的包标识符 'com.swiftyjson.SwiftyJSON' 是否正确

java - mockServer andExpect(content().XML 与当前日期连接

django - 日常构建成为Web应用程序的途径吗?