[nodejs] REST API를 위한 테스트 방법

REST API를 개발하거나 테스트할 때는 다양한 도구와 방법을 사용하여야 합니다. 이 기술 블로그에서는 Node.jsJest를 사용하여 REST API를 테스트하는 방법에 대해 알아보겠습니다.

1. Jest 설치

우선, Jest를 프로젝트에 설치해야 합니다. 다음 명령어를 사용하여 Jest를 프로젝트에 설치합니다.

npm install --save-dev jest supertest

2. 테스트 코드 작성

API 엔드포인트를 테스트하기 위한 테스트 스위트를 작성합니다. 예를 들어, “GET /users” 엔드포인트를 테스트하는 코드는 다음과 같을 수 있습니다.

const request = require('supertest');
const app = require('../app'); // 실제 API 코드가 있는 파일

describe('GET /users', () => {
  it('responds with JSON', async () => {
    const response = await request(app).get('/users');
    expect(response.statusCode).toBe(200);
    expect(response.headers['content-type']).toMatch(/application\/json/);
  });
});

3. 테스트 실행

작성된 테스트 코드를 실행하여 API 엔드포인트가 예상대로 동작하는지 확인합니다.

npm test

4. 추가적인 테스트

이외에도 다양한 테스트 케이스를 추가하여 API의 안정성을 보장할 수 있습니다. 예를 들어, 유효하지 않은 요청이 들어왔을 때의 테스트, 인증이 필요한 엔드포인트의 테스트 등을 추가할 수 있습니다.

이상으로, Jest와 supertest를 사용하여 Node.js 기반의 REST API를 테스트하는 방법에 대해 알아보았습니다.

참고문헌: