Ios UITests Xcode7:如何使用乘法选择器调整日期选择器?

Ios UITests Xcode7:如何使用乘法选择器调整日期选择器?,ios,xcode,swift,xcode-ui-testing,Ios,Xcode,Swift,Xcode Ui Testing,屏幕上有UIDatePicker。如果有一个简单的选择器,那就简单了。可能是这样的: app.pickeWheels["my_id_picker"].adjustToPickerWheelValue("expected_value") 但问题是如何在UIDatePicker中调整乘法选择器 您必须通过指定要调整的选择器元件/组件来访问不同的车轮 这是我的代码(在Swift 2.2中),带有一个简单得多的日期选择器,但我相信您可以调整代码以满足您的需要: let calendar = NSCal

屏幕上有
UIDatePicker
。如果有一个简单的选择器,那就简单了。可能是这样的:

app.pickeWheels["my_id_picker"].adjustToPickerWheelValue("expected_value")
但问题是如何在
UIDatePicker
中调整乘法选择器


您必须通过指定要调整的选择器元件/组件来访问不同的车轮

这是我的代码(在Swift 2.2中),带有一个简单得多的日期选择器,但我相信您可以调整代码以满足您的需要:

let calendar = NSCalendar.currentCalendar()
let date = NSDate()
let month = calendar.component(NSCalendarUnit.Month, fromDate: date)
let day = calendar.component(NSCalendarUnit.Day, fromDate: date)
let nextMonthName = dateFormatter.monthSymbols[month]

let firstWheel = app.pickerWheels.elementBoundByIndex(0)
firstWheel.adjustToPickerWheelValue("\(nextMonthName)")

let secondWheel = app.pickerWheels.elementBoundByIndex(1)
secondWheel.adjustToPickerWheelValue("\(day+1)")

很好的解决方案!我感到困惑的是,日期选取者必须被称为一般选取者。我尝试了app.datePickers.element(boundBy:2)并得到了这个错误:datePickerI没有匹配项,我将不得不查看它,但我假设它是,因为在UITesting时您不能真正引用UIElements本身。它们只是一些元素。我很高兴看到对ui元素的某种类型的引用,但我也知道为什么它不存在。我认为这不是UITests的目的。当我为测试设置权限时,我尝试假装自己是一个在应用程序中滑动的用户:)