Я предполагаю, что у большинства сборщиков дат будет элемент input
, в который можно вводить дату.
Предполагая, что приложение использует средство выбора даты из библиотеки (поэтому вам не нужно проверять выбор даты нажатием кнопки), вы можете выбрать этот элемент и использовать команду Cypress .type()
для ввода будущего. date.
Например, элемент выбора даты пользовательского интерфейса docs имеет этот элемент ввода
<input aria-invalid="false"
id="date-picker-inline"
type="text"
class="MuiInputBase-input MuiInput-input MuiInputBase-inputAdornedEnd"
value="08/18/2014">
, поэтому шаги будут выглядеть примерно так:
cy.visit('https://material-ui.com/components/pickers');
const targetDate = Cypress.moment()
.add(1, 'year')
.add(1, 'month')
.add(1, 'day')
.format('MM/DD/YYYY') // adjust format to suit the apps requirements
cy.get('input[id="date-picker-inline"]')
.clear()
.type(`${targetDate}{enter}`) // presume you need the enter key to trigger an event
Ref: Cypress.moment