iOS UI测试Datepicker

Mys*_*ied 2 datepicker ios swift uitest

我正在为iOS应用程序进行UI测试.我无法找到如何使用自动化测试日期选择器.现在,我一直试图找到日期选择器本身,所以我可以更改值.

关于这个问题,我已经搜索了很多线程但没有找到任何内容.

如果有人对此有任何见解,我将不胜感激.谢谢!

小智 16

首先,我建议您使用Xcode中的"Record UI Test"按钮轻松找到如何UIDatePicker在UI测试中访问.

对于简单UIDatePickerdate模式,更改日期非常简单:

let datePickers = XCUIApplication().datePickers
datePickers.pickerWheels.element(boundBy: 0).adjust(toPickerWheelValue: "June")
datePickers.pickerWheels.element(boundBy: 1).adjust(toPickerWheelValue: "1")
datePickers.pickerWheels.element(boundBy: 2).adjust(toPickerWheelValue: "2015")
Run Code Online (Sandbox Code Playgroud)

如果datePicker连接到a UILabel,则可以检查标签中的文本是否已正确更新.


And*_*rew 8

对于支持多种本地化的任何人来说,更简单的方法是

 let dateComponent = Calendar.current.dateComponents([.day, .month, .year], from: Date())
 let formatter = DateFormatter()
 formatter.dateFormat = "MMMM"
 let monthText = formatter.string(from: Date())

 datePicker.pickerWheels[String(dateComponent.year!)].adjust(toPickerWheelValue: "2017")
 datePicker.pickerWheels[monthText].adjust(toPickerWheelValue: "December")
 datePicker.pickerWheels[String(dateComponent.day!)].adjust(toPickerWheelValue: "21")
Run Code Online (Sandbox Code Playgroud)