Cypress тесты - магазин редуксов пуст - PullRequest
0 голосов
/ 11 февраля 2020

Так что у меня есть небольшая проблема с Cypress. Я пытался запустить некоторые тесты e2e с ним. Для контекста, в проекте в качестве промежуточного программного обеспечения я использую реагирование (функциональные компоненты и хуки), redux и redux-saga. Таким образом, я в основном вошел в приложение через POST-запрос, чтобы мне дали поварское имя ie, и приложение не вышло из системы. Затем я перешел на одну из страниц приложения. Там должно произойти несколько вещей:

  1. Вызов для получения пользовательских данных (работает, я получаю правильные данные в ответ)

2. Пользовательские данные должны быть сохранено в магазине редуксов.

Еще один вызов, чтобы потом получить некоторые данные для страницы, он использует пользовательские данные, которые были взяты в пункте 1.

Второй и третий шаги не работают, хотя пользователь Идентификатор в теле моего звонка на шаге 3 пуст. Я console.logged все состояние избыточности в приложении во время тестов, и это действительно пусто. Таким образом, похоже, что существует некоторая проблема либо в Redux-Saga, либо в самом Redx в сохранении данных. Хотя это немного странно, потому что Cypress не имеет доступа к этим местам, он работает на развернутой версии приложения ... (в приложении все работает нормально, конечно) У кого-нибудь была такая проблема или есть представление о том, как можно Я чиню это? Мой тест для контекста:

 context('TEST', () => {
  it('test', () => {
    cy.request({
      method: 'POST',
      url: 'someUrl',
      body: JSON.stringify({ email: 'someEmail', password: 'somePassword' }),
      failOnStatusCode: false
    });
    cy.wait(2000); /* this was added when the test didn't work already, i thought it just might be some timing issue */
    cy.visit('someRoute');

  });
});
...