我正在尝试在我的iOS UITest项目中创建一个用Eureka forms构建的表单。
这是拾取器轮子的外观。它是尤里卡上的一个TimeRow()

问题是我的UITest无法移动DateField。它只能移动小时和分钟字段。下面是UITtest代码
func testSetTime() {
app.tables.cells.containing(.staticText, identifier: "Departure Time").element.tap()
// unable to get this to work.
app.datePickers.pickerWheels.element(boundBy: 0).adjust(toPickerWheelValue: "May 14")
// these lines work perfectly.
app.datePickers.pickerWheels.element(boundBy: 1).adjust(toPickerWheelValue: "01")
app.datePickers.pickerWheels.element(boundBy: 2).adjust(toPickerWheelValue: "00")
app.buttons["Done"].firstMatch.tap()
}运行后的错误如下。
在可能的值28 Mar,29 Mar,30 Mar,31 Mar,1 Apr,2 Apr,3 Apr,4 Apr,5 Apr,6 Apr,7 Apr,8 Apr,9 Apr,10 Apr,11 Apr,12 Apr,13 Apr,14 Apr,15 Apr,16 Apr,17 Apr,18 Apr,19 Apr,20 Apr,21 Apr,22 Apr,23 Apr,24 Apr,25 Apr,26 Apr,27 Apr,28 Apr,29 Apr,30 Apr,5月1日,5月2日,5月3日,5月4日,5月6日,5月3日,5月4日,5月5日,5月6日5月7日、8日、9日、10日、11日、12日、13日、14日、15日、16日、17日、18日、19日、20日、21日、22日、23日、24日、25日、26日、27日、28日、29日、30日、31日、1月1日、2日、3日、6日、4日、5日、6日、7日、8日、9日、6月9日、10日、11日、12日6月、13日6月、14日6月、15日6月、16日6月、17日6月、18日6月、19日6月20 Jun、21 Jun、22 Jun、23 Jun、24 Jun、25 Jun、26 Jun、27 Jun、28 Jun、29 Jun、30 Jun、Jul 1、Jul 2、Jul 3、Jul 4、Jul 5,适用于拨片轮PickerWheel
发布于 2020-05-19 16:19:01
这个框架充分说明了你应该使用17 May而不是May 17的问题。
app.pickerWheels.firstMatch.adjust(toPickerWheelValue: "17 May")
更新
我试着在日历应用程序(Xcode11.4)中与类似的选择器进行交互
工作正常
class siguiente: XCTestCase {
func testExample() {
// Given
let app = XCTApps.calendar.app
app.launch()
app.buttons["Add"].tap()
app.staticTexts["Starts"].tap()
// When
let dateWheel = app.pickerWheels.firstMatch
app.pickerWheels.firstMatch.adjust(toPickerWheelValue: "May 21")
// Then
XCTAssertEqual(dateWheel.value as? String, "Thu, May 21")
}
}https://stackoverflow.com/questions/61850300
复制相似问题