Изменение данных для маршрута в тесте кипариса для конечной точки QraphQL - PullRequest
0 голосов
/ 01 декабря 2018

У меня есть приложение Angular, использующее QraphQL.Я пишу тест на кипарисе, который выглядит так:

it('should do something', () => {
  cy.server();
  cy.route('POST', '/graphql', 'fixture:data1.json');
  // data is loaded from the endpoint to populate the page
  cy.visit('http://localhost:3000/#/something/somethingElse');

  // when the button is clicked, the same endpoint is called again,
  // but now I need it to deliver some other data.
  cy.get('button')
    .click();
});

Может кто-нибудь дать мне способ настроить это?Заранее спасибо

1 Ответ

0 голосов
/ 03 декабря 2018

Может быть, вы можете использовать easygraphql , чтобы решить эту проблему !!Существует несколько пакетов, которые можно использовать:

  1. easygraphql-now : вы можете создать на вашем package.json скрипт, который будет запускать "easygraphql-now schema.gql --graphiql --local -p=7000" в месте вашего прохождениямаршрут схемы, флаг local и graphiql и порт ... поэтому, когда вы его запускаете;он создаст фиктивный сервер с переданной схемой, поэтому ваше приложение Angular отправит запрос серверу, который ответит на макет вашего запроса.Вот полезный пост .

  2. easygraphql-mock : если вы хотите вернуть полный макет типа, выможно использовать этот пакет, и с этим вам не нужно создавать приборы для каждого типа.

  3. easygraphql-tester : Это похоже на easygraphql-mock но с той разницей, что вы можете вернуть макет запроса, отметьте docs

Если вы решите использовать easygraphql , чтобы решить эту проблему, не стесняйтесь создавать пример в репозитории, здесь есть проблема здесь , чтобы создать пример с использованием Cypress

...