在iOS中获取包含带静态文本的另一个元素的元素UITesting

时间:2018-02-16 15:03:19

标签: ios swift ui-testing

如何构建查询以通过静态文本获取包含其他元素的元素。

示例:获取包含带有文本“cool cell”的标签的第一个表格单元格

我需要它,因为我有不同的单元格,我想得到一个包含特定文本的单元格。请注意,我有兴趣获取单元格,因为我需要确保单元格包含其他元素。目标是确保标题为“我是一个单元格”的单元格还有一个带有文本“酷”的标签

3 个答案:

答案 0 :(得分:1)

如果您对测试感兴趣 也许this library可以帮到你。

答案 1 :(得分:1)

  

获取第一个包含带有文本"冷却单元格"

的标签的表格单元格

怎么样:

let app = XCUIApplication()
app.cells.containing(.staticText, identifier: "cool cell")

如果这还不够,那么containing的版本需要NSPredicate

func containing(_ predicate: NSPredicate) -> XCUIElementQuery
func containing(_ elementType: XCUIElement.ElementType, identifier: String?) -> XCUIElementQuery

文档:

  

返回一个新查询,用于查找包含与规范匹配的后代的元素"这就是你需要的。 [...]

答案 2 :(得分:0)

如果您不想使用外部库,那么有什么阻止您形成添加新的UI测试目标并实现一个测试类,您可以在其中创建虚拟数据源并初始化一个单元格数组(由nibs组成) )然后在那里验证它们?