问题其实很简单:
有没有办法在此对象上使用可访问性标签时断言特定标签(例如UILabel)的显示值?
据我所知,在示例中做出的所有断言(例如XCTAssertEquals),无论是来自WWDC Talk还是Blogposts,都只检查是否存在查询的元素,XCTAssertEquals(app.staticTexts["myValue"].exists, true)或者表中单元格的数量是否正确XCTAssertEquals(app.tables.cells.count, 5).因此,当避免使用可访问性标签时,可以检查对象是否显示某个值,而不是哪个对象/元素.当使用可访问性标签时,它会让我有机会查询显示的值,因为app.staticTexts["myValue"]现在无法提供结果但app.staticTexts["myAccessibilityLabel"]会命中.
假设我想测试我的"将新单元格添加到表格"功能,我可以测试列表中是否添加了新单元格,但我不知道新单元格是添加到列表的顶部还是底部或介于两者之间.
对我来说,检查特定元素是否具有特定值的简单方法应该是UI测试的明智之举.
由于缺少文档,我可能会忽略显而易见的事实.如果是这样,请告诉我.