我有一个带有搜索栏的UITableView
。该表可以包含数千个单元格。由于仅实际获取/渲染屏幕上的单元,因此性能很好。
我正在尝试使用UI测试与tableview进行交互,即使试图轻按搜索栏似乎也无法正常工作:
app.tables.searchFields["identifier"].tap()
将导致应用无响应(100%CPU和不断增加的内存)。当我只用一小组细胞进行完全相同的操作时,它就可以正常工作。
我的猜测是,堆栈的某些部分正在获取所有要查询的单元格。 有办法防止这种情况吗?
答案 0 :(得分:0)
也许使用firstmatch会有所帮助
https://developer.apple.com/documentation/xctest/xcuielementtypequeryprovider/2902250-firstmatch
调用firstMatch时,XCTest一旦找到匹配的元素,就会停止遍历应用程序的可访问性层次结构,从而加快了元素查询的速度。
答案 1 :(得分:0)
也可以使用element(boundBy:Int): https://developer.apple.com/documentation/xctest/xcuielementquery/1500842-element