我正在尝试mm/dd/yyyy
使用 nightwatch 输入格式化为 Kendo React DatePicker 控件的日期字符串setValue
。似乎无论我采用什么方法来选择控件,它总是首先将光标设置在年份部分,然后键入然后只填写这四个字符。(例如,如果我提供“05/06/2016”,我在输入中看到的所有内容都是“mm/dd/0016”,并且月份和日期永远不会更新。)
如果我在月份字段上单击鼠标,则该控件在正常情况下似乎可以正常工作,光标将显示在那里,如果我键入 2 个字符,再输入 2/
个字符,/
然后最后 4 个字符,控件工作正常。硒选择控件和 DatePickers 默认行为似乎只是一个问题。
由于可访问性处理允许,我尝试使用browser.Key.LEFT_ARROW
它来查看是否可以先将光标向左移动两次。我还尝试先调用clearValue()
输入,然后从头开始输入,但在这两种情况下都没有成功。
如果可以避免,我宁愿不使用日历控件选择日期。
这是我的代码目前的样子:
const consumerInfo = {
birthMonth: "05",
birthDay: "06",
birthYear: "2016",
birthDate: "05/06/2016",
};
const datePickerSelector = '.myDatePicker';
const datePickerInputSelector = '.myDatePicker .k-input';
browser.waitForElementVisible(datePickerSelector, DEFAULT_WAIT_TIME)
.waitForElementVisible(datePickerInputSelector, DEFAULT_WAIT_TIME)
.setValue('.myDatePicker .k-input, [
consumerInfo.birthYear,
browser.Keys.LEFT_ARROW,
consumerInfo.birthDay,
browser.Keys.LEFT_ARROW,
consumerInfo.birthMonth,
])
.assert.value(
datePickerInputSelector,
consumerInfo.birthDate,
`Birthdate is set to ${consumerInfo.birthDate}`
);
任何建议表示赞赏。