나는 재스민으로 오늘 테스트를 시작했다. NodeJS로 개발 된 GraphQL 서버로 작업 중이므로 jasmine-node
을 사용하고 있습니다.재스민 노드가 실행되지 않을 것으로 예상 됨
다음은 나 자신을 쓰기 첫 사양이며, 나는 그것이 작동하는 줄 알았는데 : 부지에서
..
Finished in 0.018 seconds
2 tests, 4 assertions, 0 failures, 0 skipped
Error: null
http://localhost:8000/graphql
StatusCode: 400
Body: {"errors":[{"message":"Must provide query string."}]}
이 내가 기대하는 것을 정확히 경우 :
const request = require('request');
const config = require('../sources/config');
const base_url = `http://localhost:${config.graphqlPort}/${config.graphqlRoute}`;
describe("GraphQLServer.",() => {
it("Should expect something.",() => {
expect(1).not.toEqual(2);
expect(1).toEqual(1);
expect(true).toBe(true);
expect(false).not.toBe(true);
});
describe('When request is made.',() => {
it('Returns statuscode 200.',() => {
request.get(base_url, (error, response, body) => {
console.log('Error: ', error);
console.log(base_url);
console.log('StatusCode: ', response && response.statusCode);
console.log('Body:', body);
expect(true).toBe(true);
expect(true).toBe(false);
expect(response.statusCode).toBe(200);
expect(response.statusCode).toBe(400);
done();
});
});
});
});
이것은 다음과 같은 결과를 제공 . 나는 쿼리 문자열없이 요청을하므로 본문의 오류가 예상됩니다.
문제는 다음과 같습니다. expects
it("Should expect something")
안에 쓸모없는 4 개의 숫자가 잘 작동하고 있습니다. 결과는 4 assertions
입니다. 다른 expect
의 내부에있는 it("Returns statuscode 200.")
은 결과에 간단하지 않으며 (실패하지 않고 통과하지 못합니다), console.log
입니다.
내가 온라인에서 찾은 모든 사례는 내가 여기서 한 일을 정확히 수행 한 것으로 보이지만 아직 제대로 작동하지는 않습니다.
감사합니다. Kev! 나는 그 바보 같은 실수를 솔직히 보지 못했습니다. 나는 단지 몇 주 전에 Javascript로 개발을 시작했다는 것을 인정해야한다. 그래서 나는 그러한 버그를 빨리 발견 할 경험이 없다고 생각한다. Javascript가 정확히 도움이되지 않는 것은 오류를주지 않는 습관입니다. 하지만 고마워! – Kenny
안녕하세요. 사실, 많은 JS 컨텍스트가 오류에 대한 최악의 피드백을 산출합니다. 실제로는 때때로 미치게 될 수 있습니다. 기꺼이 도와주세요! – Kev