Я использую react 16.8.1
, cypress 3.1.5
и firebase 5.5.3
для тестов e2e.
В настоящее время мне нужно подождать, пока страница загрузит все компоненты, а затем запустить тесты, как получить кнопкуи щелкнув по нему.
Перед каждым тестом программа проверяет, вошел ли пользователь в систему, и если да, то будет ждать, пока firebase отправит несколько POST
и GET
запросов.
К сожалению, Cypress показывает CypressError: Timed out retrying: cy.wait() timed out waiting 100000ms for the 1st response to the route: 'googleGETRoute'. No response ever occurred.
как для запросов GET, так и для запросов POST, что делает невозможным нажатие или продолжение тестов.
Перед каждым запросом я запускаю следующее:
beforeEach(function () {
cy.server().route({ url: /https:\/\/.*google.*/, method: "POST" }).as("googleRoute");
cy.server().route({ url: /https:\/\/.*google.*/, method: "GET" }).as("googleGETRoute");
cy.visit('/event');
cy.wait('@googleRoute', xhr => {
cy.url().then((url) => {
if (url === 'http://localhost:3000/login') {
cy.loginByForm(testUserAccount, testUserPassword);
}
});
});
});
И для удалениясобытие:
it('should deleteEvent', function() {
cy.wait('@googleGETRoute', { responseTimeout:100000, log:true });
cy.wait('@googleRoute', { responseTimeout: 100000, log:true });
deleteEvent(event);
cy.contains(event.title).should('not.be.visible');
});
по-прежнему нет ответов от пожарного магазина.Я также проверил # 1652 и # 2374 , которые почти совпадают с этой проблемой.
Кто-нибудь сталкивался с этой проблемой раньше?Буду признателен за любую помощь