UItesting:点击 UIcollectionview 然后测试它失败
Posted
技术标签:
【中文标题】UItesting:点击 UIcollectionview 然后测试它失败【英文标题】:UItesting : Click on UIcollectionview then testing it get failed 【发布时间】:2017-10-11 14:52:01 【问题描述】:我是 ui 测试的新手。在录制过程中,当我点击 ui-collection view时,第一个对象显示在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 视图的第一个对象。请提出一种方法来做到这一点。 提前致谢。
【问题讨论】:
我刚刚找到了一种方法,只需在属性检查器中取消选中可访问性启用并重新运行记录。 【参考方案1】:记录 UITests 往往会给你很长很丑的查询。我强烈建议你看看如何手动编写 UITests。这真的很容易,查询看起来好多了。
例如:点击收藏视图的第一个单元格,您只需执行以下操作(假设当前屏幕上只有一个UICollectionView
):
Objective-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()
【讨论】:
你能告诉我更多关于如何聚焦你的键盘吗?因为当我在 ui-text 字段上进行测试时,出现错误说元素和任何后代都没有键盘焦点。感谢您的宝贵时间。 在您可以在 UITextField 中输入文本之前,您必须先点击()它。 我正在点击它,但我想在播放录制的代码时它不知道在哪里点击,所以它点击其他地方而不是那个特定位置,所以它给出了这些错误:-既不是元素也不是任何后代都有键盘焦点。元素: 您真的应该尝试手动编写测试。查看此问题的答案以获取有关如何访问文本字段的指导:***.com/questions/34658482/…以上是关于UItesting:点击 UIcollectionview 然后测试它失败的主要内容,如果未能解决你的问题,请参考以下文章
iOS UITesting 如何关闭弹出框(iPad 弹出框不提醒样式)