내 GitHub 작업에 대한 테스트 작성

. 코드 품질을 높이고 소프트웨어 엔지니어링 모범 사례를 따르는 방법을 생각하고 있었습니다.

소프트웨어 엔지니어링 수명 주기의 필수 부분이므로 작업에 대한 테스트를 작성해야 한다고 생각했습니다.



JS로 테스트 작성



내 GitHub 작업의 대부분의 코드는 axios를 사용하여 API 요청을 DEV 서버로 보냅니다. API 요청을 테스트해야 합니다.

이 코드를 테스트하기 위해 테스트 목적으로 API 호출을 조롱하는 Axios Mock adapter 을 발견했습니다.

JavaScript용 테스트 프레임워크인 Jest과 함께 이 모의 라이브러리를 사용했습니다.

라이브러리 설치




npm install axios-mock-adapter --save-dev
npm install jest --save-dev

조롱 요청



아래는 공식 문서의 예입니다.

var axios = require("axios");
var MockAdapter = require("axios-mock-adapter");

var mock = new MockAdapter(axios);

mock.onGet("/users").reply(200, {
  users: [{ id: 1, name: "John Smith" }],
});

axios.get("/users").then(function (response) {
  console.log(response.data);
});

Jest로 테스트하기



// require libraries

var mock = new MockAdapter(axios);

// Mocking
mock.onPost(url + "/articles").reply(201, {});

// Writing Test
test("Testing a 201 (created) response", () => {
  var data = {};
  expect(createPost(data, "secret")).toBeTruthy(); // Test passes if the value is truthy
});


이제 package.json에 다음과 같이 스크립트를 추가하십시오.

...
"scripts": {
    ....
    "test": "jest" // To run jest
  },
...

이제 다음 명령을 실행하십시오.

npm run test

콘솔에 모든 테스트 통과 메시지가 표시됩니다.

참조


  • Jest Docs
  • Axios mock-adpter

  • 소스 코드




    프리키샨 / 개발 작업


    Github에 게시된 각 릴리스에 대해 DEV.to에 게시물을 생성하는 GitHub 작업입니다.

    좋은 웹페이지 즐겨찾기