Cypress: Правильно ли писать «динамические» тесты, основанные на ответах сервера? - PullRequest
0 голосов
/ 08 июля 2019

Выполнение теста E2E с использованием Cypress для страницы моего приложения (реагирует на приложение).

Внешний интерфейс получает реальные ответы от реального сервера.Нет заглушки.

Итак, компонент верхнего уровня, который я хочу протестировать, отправляет запрос на сервер и возвращает массив элементов.Количество элементов может варьироваться в зависимости от запроса.

Затем каждый элемент отображается на карте.

Правильно ли писать «динамический» тест?

Что-то вроде:

it('should render movies', () => {
  cy.server();
  cy.route('api/movie/popular*').as('getPopular');
  cy.visit('/movie/popular');
  cy.wait('@getPopular').then(xhr => {
    const resultsLength = xhr.response.body.results.length;

    cy.queryAllByTestId('poster-movie-card').should(
      'have.length',
      resultsLength
    );
  });
});

Есть ли лучший способ?Так ли правильно писать тесты таким образом?

Спасибо.

...