Как остановить повторный вход в систему после каждого теста (Cypress-Angular)? - PullRequest
0 голосов
/ 15 октября 2019

Я не хочу входить в систему каждый раз, когда пишу тест. Когда я пишу "it (cypress)" более одного раза, он возвращается и выполняет повторный вход в систему, чего я не хочу, чтобы это произошло.

Он регистрируется, и после первого прохода теста он проходит второй тест, но он выполняет второй вход в систему, чтобы выполнить тест "second it". Как я могу это остановить?

describe('Integration Tests', function () {
  beforeEach(() => {
    cy.login()
  })
  it('first it', function () {
    cy.get('.css-vj8t7z')
    cy.get('.css-1ep9fjw')
  })
  it('second it', function () {
    cy.get('.css-1ep9fjw')
  })

Ответы [ 2 ]

0 голосов
/ 18 октября 2019

Вот решение:

  Cypress.LocalStorage.clear = function (keys, ls, rs) {
    return;

describe('Integration Tests', function () {
  before(() => {
    LocalStorage.clear();
    cy.login()
  })
  it('first it', function () {
    cy.get('.css-vj8t7z')
    cy.get('.css-1ep9fjw')
  })
  it('second it', function () {
    cy.get('.css-1ep9fjw')
  })
0 голосов
/ 15 октября 2019

Сначала найдите куки, которые он использовал для входа в систему.

Затем попробуйте какой-нибудь код, подобный приведенному ниже

describe('Integration Tests', function () {

  before('login once', function () {
    cy.login()
  }

  beforeEach('keep using the session', function () {
    Cypress.Cookies.preserveOnce("YourCookie")
  })

  it('first it', function () {
    cy.get('.css-vj8t7z')
    cy.get('.css-1ep9fjw')
  })
  it('second it', function () {
    cy.get('.css-1ep9fjw')
  })

читать дальше здесь

...