【问题标题】:XCUI Test: app.debugDescription shows info of the last screenXCUI 测试:app.debugDescription 显示最后一屏的信息
【发布时间】:2017-07-26 19:46:27
【问题描述】:

当我执行命令时

(lldb) po app.debugDescription

它显示上一个视图的详细信息。 如何刷新它以显示新的元素树??

【问题讨论】:

    标签: objective-c xcode automated-tests xcode-ui-testing


    【解决方案1】:

    当您与应用交互时,视图层次结构将刷新(因为可以合理地预期应用的状态不会改变,除非用户与之交互)。

    要获得新的视图层次结构,您可以点击应用程序:app.tap(),然后打印调试描述,或者您可以创建 XCUIApplication 的新实例并使用它来代替现有的 app 属性它具有缓存的视图层次结构。新实例应显示新的视图层次结构。

    【讨论】:

    • 是的,试一试:)
    • 我试过了,效果很好。但是如果有一个警报窗口并且我们按下点击,它就会被取消。我想查看警报视图的详细信息,但显示的是旧屏幕的详细信息。有什么想法吗??
    • 您可以打印出 XCUIElementQuery 的属性,例如 count 以强制生成视图层次结构的新快照。例如只打印app.alerts.count
    • @Vinayaka 要与警报交互,请使用此处解释的中断监视器:stackoverflow.com/questions/39973904/…
    • @Vinayaka 警报会被 XCTest 自动取消,如果您不自己处理它们,这就是您看到它被取消的原因。 :)
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2018-05-29
    • 1970-01-01
    • 1970-01-01
    • 2020-06-02
    相关资源
    最近更新 更多