是否有可能测试app.tables.switches字典中存在的所有开关。当我记录测试时,会添加一个字符串,其键如下:
app.tables.switches["Kantoor, kntr"].tap()但是我想把所有的开关都循环起来(代码不起作用):
for index in 0...app.tables.switches.count {
XCTAssertTrue(app.tables.switches[index].value, "")
}这是一个检查,以验证在我单击“禁用所有”-button之后,是否启用/禁用了每一行的所有开关。
发布于 2015-11-16 15:46:20
我终于找到了解决方案,它比我预期的要简单得多,但使用了错误的方法。此修复方法是使用以下命令:
let firstSwitch = app.tables.switches.elementBoundByIndex(0) 发布于 2015-11-16 11:27:57
如果您试图获得字典中的值,只需使用values属性:
let dict = [1: true, 2: false, 3: true]
dict.values // [false, true, true]如果要检查字典中的偶数值是否为带有for循环的true,则可以这样做:
for val in dict.values {
XCTAssertTrue(val)
}为了提供更多的信息,您可以同时遍历键和值,并使用这些键作为错误消息,以防得到false。
let dict = ["a": true, "b": false, "c": true]
for (key,val) in dict {
XCTAssertTrue(val, key)
}或者,使用contains方法,您可以做一个很好的一行:
XCTAssertFalse(dict.values.contains(!))它基本上测试字典不包含一个不是true的值。
https://stackoverflow.com/questions/33732111
复制相似问题