Как написать модульные тесты для graphql. Я использую сервер apollo, graphql-tester и graphql.graphql-тестер (модульные тесты) с Graphql Apollo Server
Когда я запустить тест дает следующее сообщение об ошибке
{ raw: '{"errors":[{"message":"Cannot read property \'definitions\' of undefined"}]}', data: undefined, errors: [ { message: 'Cannot read property \'definitions\' of undefined' } ], headers: { 'x-powered-by': 'Express', 'content-type': 'application/json', date: 'Wed, 18 Jan 2017 05:56:22 GMT', connection: 'close', 'transfer-encoding': 'chunked' }, status: 400, success: false } 1) Returns success 0 passing (35ms) 1 failing 1) Unittest1 Returns success: TypeError: Cannot read property 'success' of undefined at Assertion. (node_modules/chai/lib/chai/core/assertions.js:890:14) at Assertion.ctx.(anonymous function) (node_modules/chai/lib/chai/utils/addMethod.js:41:25) at Assertion.somethingMethod (node_modules/chai-things/lib/chai-things.js:97:25) at Assertion.ctx.(anonymous function) (node_modules/chai/lib/chai/utils/overwriteMethod.js:49:33) at Assertion.allMethod (node_modules/chai-things/lib/chai-things.js:165:25) at Assertion.ctx.(anonymous function) (node_modules/chai/lib/chai/utils/overwriteMethod.js:49:33) at node_modules/chai-as-promised/lib/chai-as-promised.js:305:22 at process._tickCallback (internal/process/next_tick.js:103:7)
Ниже приведен тест на единицу.
const tester = require('graphql-tester').tester; const fromGlobalId = require('graphql-relay').fromGlobalId; const chai = require('chai'); chai.should(); chai.use(require('chai-things')); chai.use(require('chai-properties')); chai.use(require('chai-arrays')); chai.use(require('chai-as-promised')); describe('Sites',() => { let sitesTest = tester({ url: 'http://localhost:3000/graphql' }); describe('Unittest1',() => { const response = sitesTest('{viewer {id}}').then((data) => { console.log(data) }); it('Returns success',() => { return response.should.eventually.have.property('success').equal(true); }); }); });
Такая же настройка, получение той же ошибки. Получили ли вы это? – jschr
Я перешел к другой задаче, не успел снова проверить. Вы проверите свой ответ ниже. Спасибо за помощь.. –