Как проверить, что элемент отображается в новом окне после нажатия ссылки в главном окне

Я использую Cypress, чтобы щелкнуть ссылку на домашней странице, которая открывает соответствующую страницу в новом окне. Я не могу идентифицировать ни один элемент на этой странице. Я делаю это, чтобы убедиться, что щелчок открывает правильную страницу.

Я увидел ссылку: Доступ к новому окну - cypress.io, которое не было ' Я сильно помогу с ответом на проблему.

Пожалуйста, предложите, есть ли способ проверить это.

Я пробовал несколько вещей, например:

cy.window().contains('.div.trItem')
cy.window().its('.trValue).should('eq','SomeHeading')
cy.url().should('include', '/theLink1.html/')

Ожидается: - Щелчок по ссылке открывает правильную страницу в новом окне - Определить URL-адрес в новом окне включает некоторый текст - Определенный текст отображается в новом окне


person Sheetal    schedule 31.05.2019    source источник


Ответы (1)


Прежде всего, вы не можете получить доступ к другой вкладке или окну с помощью Cypress. Рассмотрите возможность разделения ваших тестовых случаев. Например, в одном тесте вы можете проверить, что элемент a содержит атрибут href с ожидаемым URL-адресом и атрибут target с _blank. Нравится:

it('contains valid a element', () => {
  cy.visit('https://example.cypress.io/')
  cy.contains('Cypress.io').should('have.attr', 'href', 'https://www.cypress.io').should('have.attr', 'target', '_blank')
})

И во втором тесте убедитесь, что ваша другая страница содержит ожидаемый текст.

person Danny    schedule 01.06.2019
comment
Я подтвердил, разделив тестовые случаи. Спасибо. - person Sheetal; 02.06.2019