[typescript] 타입스크립트와 REST API 호출 시 테스트 코드 작성 방법

타입스크립트(TypeScript)를 사용하여 REST API를 호출하고 테스트하는 방법은 아주 중요합니다. 이를 통해 개발된 API가 예상대로 작동하는지 확인할 수 있습니다. 이번 글에서는 타입스크립트로 REST API를 호출하고, 테스트 코드를 작성하는 방법에 대해 알아보겠습니다.

1. Axios를 사용하여 REST API 호출하기

먼저, 타입스크립트에서 REST API를 호출하기 위해 popular한 라이브러리인 Axios를 사용해봅시다. Axios는 간편한 API 호출을 지원하고, Promise 기반의 HTTP 클라이언트 라이브러리입니다.

import axios, { AxiosResponse } from 'axios';

async function fetchData(): Promise<AxiosResponse> {
  try {
    const response: AxiosResponse = await axios.get('https://api.example.com/data');
    return response;
  } catch (error) {
    throw new Error(`API call failed: ${error}`);
  }
}

위의 코드에서 fetchData 함수를 호출하여 REST API를 호출하는 방법을 보여주었습니다. API 호출에 성공하면 응답을 반환하고, 실패하면 오류를 throw합니다.

2. Jest를 사용하여 API 테스트 코드 작성하기

이제, 위에서 작성한 API 호출 함수에 대한 테스트 코드를 작성해보겠습니다. Jest를 사용하여 간단하게 테스트 코드를 작성할 수 있습니다.

import { AxiosResponse } from 'axios';
import fetchData from './api';

describe('API Test', () => {
  test('API 호출 성공 시 데이터 반환', async () => {
    const response: AxiosResponse = await fetchData();
    expect(response.status).toBe(200);
  });

  test('API 호출 시 에러 처리', async () => {
    await expect(fetchData()).rejects.toThrow();
  });
});

위의 코드에서는 Jest를 사용하여 fetchData 함수의 성공 및 실패 시나리오에 대한 테스트 코드를 작성했습니다.

결론

타입스크립트를 사용하여 REST API를 호출하고 테스트하는 방법에 대해 알아보았습니다. Axios를 사용하여 간단하게 API 호출을 할 수 있고, Jest를 통해 API 호출에 대한 테스트 코드를 작성할 수 있습니다. 이를 통해 안정적인 API 호출 및 테스트가 가능하며, 프로젝트의 품질을 높일 수 있습니다.

참고 문헌:

이상으로 타입스크립트와 REST API 호출 시 테스트 코드 작성 방법에 대해 알아보았습니다.