尝试使用Xcode 7.2和XCT UI FW自动执行一些UI测试。
查看层次结构如下:
SearchViewController
UIView
UITableView
CustomCell:UITableViewCell
UIView
UILabel
UICollectionView
CustomCell:UICollectionViewCell
UILabel
UIImageView
CustomCell:UITableViewCell
.
.
我的问题是我无法访问UICollectionView中的任何内容,也无法实际访问UICollectionView本身(或验证它是否存在)。
这里有一些lldb cmds和输出:
po app.tables.cells.count 3
正如预期的那样,我有三个CustomCell:UITableViewCell
po app.tables.cells.elementBoundByIndex(0).staticTexts.count 1
在第一个CustomCell:UITableViewCell中为UILabel返回1。但是它是否还应该在UICollectionViewCells中包含UILabel,因为.elementType表示法是descendantsMatchingType(.elementType)的缩写?
po app.tables.collectionViews.count 0
po app.tables.cells.collectionViews.element.exists false
如您所见,我无法访问UICollectionView。在构建和测试应用程序时,每个UITableViewCell中都有8个UICollectionViewCells,我已在Xcode中设置了Accessibility复选框。
我在这里缺少什么?
答案 0 :(得分:0)
我能够以此方式识别集合视图中的单元格。只需将“ sampletext”替换为唯一标识该单元格的任何静态文本。
let predicate = NSPredicate(format: "label BEGINSWITH 'sampletext'")
let cell = XCUIApplication().collectionViews.cells.element(matching: predicate)