Как я могу получить элемент type = "email", используя Cypress? - PullRequest
0 голосов
/ 11 октября 2018

Я сейчас пытаюсь выучить Cypress для тестирования автоматизации.

Я хочу найти и щелкнуть по этому элементу:

<input type="email" class="form-control text-ellipsis-global GKMU5SYDM3B" id="gwt-uid-1419" data-empty="true">

Я не могу использовать идентификатор или что-то еще 'GKMU5SYDM3B ', поскольку они оба случайно генерируются GWT.

Я ожидаю, что моя команда будет выглядеть так:

cy.get('input').type('email').click().type('fake@email.com')
  .should('have.value', 'fake@email.com')

Я попробовал эту команду и получил следующее сообщение об ошибке:

CypressError: cy.type() can only be called on a single element. Your subject contained 4 elements.

1 Ответ

0 голосов
/ 11 октября 2018

Это должно работать.

 cy.get("[type='email']")

 cy.get("[type='email']").type('myemail@domain.com')

То, что я всегда делаю, это сначала попробуйте в JQUERY в консоли браузера.Вам не нужно нажимать на него, чтобы ввести его.

, если вокруг вас есть какой-то родительский элемент, например, div, вы также можете включить его.

<div id='parent'>
    <input type="email" class="form-control text-ellipsis-global GKMU5SYDM3B" id="gwt-uid-1419" data-empty="true">
</div>

go

cy.get('#parent').find("[type='email']").type('myemail@domain.com')
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...