我想写一个测试,我需要调整我的选择轮。 我的机械臂轮有不止一行,我通过以下方式访问它:
pickerWheels[0].adjust(toPickerWheelValue: "1. Mai")
它给我抛出了一个错误:
因此,">断言失败::0:内部错误:找不到当前 值"Mai 4"在可能的值中...4. 麦
Mai 4"实际上是可能的"值",但格式错误。有什么办法可以解决这个问题吗?
我已经阅读了 https://forums.developer.apple.com/thread/16104 但是.adjust适用于我的不同行。
这是使用viewForRow覆盖代替titleForRow的UIPickerView实现的旧问题。它至少可以追溯到 2014 年,截至 2019 年 8 月还没有解决方案: 苹果开发者线程
一个简单的解决方法是为 UI 测试实现选取器的 titleForRow 重写,并恢复到生产中通常更复杂的 viewForRow 方法。
作为替代方案,如果可以选择器视图测试中仅处理第一个和最后一个条目,请使用 swipeUp(( 和 swipeDown(( 方法。这些将分别选择第一个或最后一个项目,而不考虑文本或字段数。像这样:
let pickerWheel = app.pickers.children(matching: .pickerWheel).element
pickerWheel.swipeUp()
pickerWheel.tap()
但是 adjustToPickerWheelValue 完全被彻底破坏了。当前的雷达条目为: 选取器查看测试失败