iOS UI 测试 - 选择器轮仅调整一项滑动

Posted

技术标签:

【中文标题】iOS UI 测试 - 选择器轮仅调整一项滑动【英文标题】:iOS UI testing - picker wheel adjusting only swipes by one item 【发布时间】:2019-12-09 18:58:16 【问题描述】:

我正在尝试为 UIPickerView 编写测试以选择某些值。我使用picker.adjust(toPickerWheelValue: pickValue) 这样做。但问题是,由于某种原因,这只会将选择器滑动一个值。

例如在gif上你可以看到初始值为52,然后我调用picker.adjust(toPickerWheelValue: "15")它变成了51而不是15,然后我再次调用它变成了50:

所以模式是它只将它向上或向下更改一个值,使其更接近所需值。

这里有什么问题?

【问题讨论】:

能贴一下相关代码吗?比截图可读性好很多。 您在 UI 测试期间暂停并提供手动 LLDB 命令? @matt 是的。以交互方式显示其行为方式 @koen 我打电话给adjust(toPickerWheelValue: "15") pickerWheel element @Simon Moshenko:苹果文档说 /*!更改选择器轮的显示值。如果指定的值不可用,将生成测试失败。 */ open func adjust(toPickerWheelValue pickerWheelValue: String) 期望值可用吗?运行时(不是 lldb)产生的错误是什么?看起来你对我的称呼是正确的.. 【参考方案1】:

带有初始值的引用对我有用。所以我的代码如下所示:

app.pickerWheels["52"].adjust(toPickerWheelValue: "15")

【讨论】:

以上是关于iOS UI 测试 - 选择器轮仅调整一项滑动的主要内容,如果未能解决你的问题,请参考以下文章