我是UITests的初学者。目前,我有一个问题,我无法访问collectionViewCell中的元素。
我的UI元素结构:
的UIViewController
的UITableView
- UITableViewCell
---> UICollectionView
----> UICollectionViewCell -----> The element that I would like to get.
我尝试过以下代码:
let tableCellContainer = app.tables["HomeRVMPTableView"].cells.element(boundBy: 0) // Get the first Cell of TableView
let collectionContainer = tableCellContainer.collectionViews["ContainerItemCollectionView"].cells.element(boundBy: 1) // Get the second Cell inside collectionView
let collectionElement = collectionContainer.staticTexts["BuyCashCard"]
XCTAssertFalse(!collectionElement.exists) // FAILED
有没有办法更方便地访问collectionViewCell / tableViewCell?当他开始使用UITests时,我真他妈的累了。
答案 0 :(得分:1)
谢谢大家帮助我,我刚刚找到另一种方法来访问tableview中的集合视图。
这是我的代码:
let tableCellContainer = app.tables["MainTableView"].cells.element(boundBy: 1)
let cell = tableCellContainer.staticTexts["Brazil"]
cell.tap()
XCTAssert(cell.exists)
希望这会帮助另一个像我这样有同样问题的人。
答案 1 :(得分:0)
要使该行失败,collectionElement必须实际存在。用XCTAssert(collectionElement.exists)
XCTAssertFalse
失败。当条件为真时,XCTAssert
(相当于XCTAssertTrue
)成功。