Разное поведение при запуске нескольких спецификаций Cypress с помощью команд open и run - PullRequest
0 голосов
/ 07 ноября 2019

У меня есть простая спецификация, которая посещает сайт и регистрируется, как показано ниже:

it ('Visits the site as logged in user', function () {
  cy.visit('http://example.com')
  cy.get('#username').type(Cypress.env('username'))
  cy.get('#password').type(Cypress.env('password'))
  cy.get('#submit').click()
  cy.contains('logout')
})

Это прекрасно работает, когда я запускаю его самостоятельно. Я делаю второй файл спецификации и копирую содержимое первого файла спецификации. Теперь у меня есть 2 спецификации, которые делают то же самое. Если я запускаю npx cypress open и запускаю все спецификации, то обе спецификации запускаются успешно. Однако я делаю npx cypress run, тогда вторая спецификация дает сбой, потому что куки или сеанс или что-то еще не было очищено, и когда сайт посещается, он уже вошел в систему, поэтому страница входа не отображается.

Из чегоЯ прочитал куки, и я предполагаю, что все остальное должно быть очищено между спецификациями. Разница между open и run также касается, поскольку я считаю, что они должны быть согласованы (обратите внимание, что использование параметра --headed для запуска не меняет поведение для run).

Я пытался выполнитьоба cy.clearCookies() and cy.clearLocalStorage() перед тестами, но это ничего не меняет.

Кто-нибудь еще сталкивался с подобными проблемами и знает, как это исправить?

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...