我正在为一个应用程序编写UI测试,该应用程序的表视图中包含大单元格(〜1000)。尝试访问单元格元素将显示以下错误:
无法获取匹配的快照:评估UI查询时超时。
场景:
XCUIApplication().tables.firstMatch.cells.count
来获取细胞数,则会引发异常XCUIApplication().debugDescription
,则会引发异常XCUIApplication().debugDescription
中的元素时,系统就会尝试评估所有UI元素。这是预期的行为,所以我想到了在本地复制XCUIApplication()
数据的副本,并使用该本地保存的实例处理查询。所以,我尝试了这个:
XCUIApplication()
[这里,我使用了一个惰性变量(因为我只想调用private lazy var dummyApp: XCUIApplication = { return XCUIApplication() }()
一次以阻止系统拍摄快照),该变量返回XCUIApplication()
实例并尝试打印像这样的单元格计数:
XCUIApplication()
这也会引发相同的错误。是否可以使用局部变量保存问题:
dummyApp.tables.firstMatch.cells.count
的整个结构?还是可以在访问元素之前停止/扩展快照过程?P.S:我正在使用Xcode 11.3.1。我长期面对XCUIApplication()
问题。由于XCUITest从Xcode 9更改了与应用程序的交互,因此将此问题作为单独的问题发布。
我正在为一个应用程序编写UI测试,该应用程序的表视图中包含大单元格(〜1000)。尝试访问单元格元素将显示以下错误:无法获取匹配的快照:定时...
答案
: