当前位置:  开发笔记 > 编程语言 > 正文

有没有办法清除/刷新辅助功能层次缓存

如何解决《有没有办法清除/刷新辅助功能层次缓存》经验,为你挑选了1个好方法。

我有一个UI测试,它检查静态文本元素的值,等待几秒钟,然后再次检查以确认更改.起初它没有工作,因为层次结构没有更新.我在日志中注意到了这一点;

使用缓存的辅助功能层次结构

我通过简单地添加一个菜单并打开/关闭它以便合成事件并更新层次结构来为此设置解决方法.

但是,如果有一种方法可以直接清除缓存或强制更新,那就更好了.我还没有在API中找到一个.我错过了什么吗?

有任何想法吗?

这就是我在做的事情;

XCTAssertEqual(app.staticTexts["myText"].label, "Expected 1")
sleep(20)
menu.tap()
sleep(1)
menu.tap()
XCTAssertEqual(app.staticTexts["myText"].label, "Expected 2")

我希望能够做到这一点

XCTAssertEqual(app.staticTexts["myText"].label, "Expected 1")
sleep(20)
app.elements.refresh()
XCTAssertEqual(app.staticTexts["myText"].label, "Expected 2")

Gary.. 8

为了强制更新辅助功能层次结构,请为以下count属性请求属性XCUIElementQuery:

// refresh
_ = XCUIApplication().navigationBars.count

// examine
print(XCUIApplication().debugDescription)

上述结果为:" 获取匹配类型为:后代匹配类型NavigationBar "和" com.myapp的快照可访问性层次结构 ".



1> Gary..:

为了强制更新辅助功能层次结构,请为以下count属性请求属性XCUIElementQuery:

// refresh
_ = XCUIApplication().navigationBars.count

// examine
print(XCUIApplication().debugDescription)

上述结果为:" 获取匹配类型为:后代匹配类型NavigationBar "和" com.myapp的快照可访问性层次结构 ".

推荐阅读
php
这个屌丝很懒,什么也没留下!
DevBox开发工具箱 | 专业的在线开发工具网站    京公网安备 11010802040832号  |  京ICP备19059560号-6
Copyright © 1998 - 2020 DevBox.CN. All Rights Reserved devBox.cn 开发工具箱 版权所有