我是ui-testing的新手。在录制期间,当我点击 ui-collection视图时,第一个对象显示在UI上,并且对应于以测试示例方法编写的代码:
XCUIElement *window = [[app childrenMatchingType:XCUIElementTypeWindow] elementBoundByIndex:0];
XCUIElement *element2 = [[[[window childrenMatchingType:XCUIElementTypeOther].element childrenMatchingType:XCUIElementTypeOther].element childrenMatchingType:XCUIElementTypeOther].element childrenMatchingType:XCUIElementTypeOther].element;
[element2 tap];
当自动化测试示例方法时,它无法获取ui-collection视图的第一个对象。请建议一种方法来做到这一点。 提前谢谢。
答案 0 :(得分:2)
录制UITests往往会给你真正漫长而丑陋的疑问。我强烈建议您查看如何手动编写UITests。它非常简单,查询看起来更好。
例如:要点按集合视图的第一个单元格,您需要做的就是这个(假设当前屏幕上只有一个UICollectionView
):
<强>目标C 强>
- (void)testExample {
XCUIApplication *app = [[XCUIApplication alloc] init];
[app launch];
[[app.collectionViews.cells elementBoundByIndex:0] tap];
}
<强>夫特强>
func testExample() {
let app = XCUIApplication()
app.launch()
// tap on the first collection view cell on the current screen
app.collectionViews.cells.element(boundBy:0).tap()
}