在 Nightwatch 的日历中选择日期

Selecting date in calendars on Nightwatch

我正在尝试 select 我的日历上的日期,而 Nightwatch 似乎无法 select 正确。

我想做的是:

document.querySelector("#calendario_inline > div > div > div > select.ui-datepicker-month")
    .click()
    .pause(100)
    .setValue('//*[@id="calendario_inline"]/div/div/div/select[1]', 'OUT')

document.querySelector("#calendario_inline > div > div > div > select.ui-datepicker-year")
    .click()
    .pause(100)
    .setValue('//*[@id="calendario_inline"]/div/div/div/select[2]', '2019')
    .pause(100)
    .click('//*[@id="calendario_inline"]/div/table/tbody/tr[3]/td[4]/a')
    .pause(1000)

这是我的日历 fiddle:

https://jsfiddle.net/dnj0zqa4/

编辑:

日历似乎位于 iframe 中。您需要先访问它。使用这个::

client.element("css selector", "#editor > div.panel-v.right > div.panel-h.panel.resultsPanel > iframe", function(response) {
            client.frame({ELEMENT: response.value.ELEMENT});
        });

完成日历后,使用 .frame(null)

退出 iframe

试试这个:

对于 MONTH,到 select 十月(值 9):

client.useXpath().click('//select[@class="ui-datepicker-month"]/option[@value="9"]').useCss();

YEAR,到 select 2019 年:

client.useXpath().click('//select[@class="ui-datepicker-year"]/option[@value="2019"]').useCss();