>웹 프론트엔드 >JS 튜토리얼 >단위 및 통합 테스트

단위 및 통합 테스트

Mary-Kate Olsen
Mary-Kate Olsen원래의
2025-01-03 18:21:40251검색

? Jest와 Axios를 사용한 Fireup 단위 및 통합 테스트

테스트는 코드가 예상대로 작동하고 시간이 지나도 안정성을 유지하는지 확인하는 데 있어 중요한 부분입니다. 이 가이드에서는 JestAxios를 사용한 예제를 통해 유닛 테스트통합 테스트를 설명합니다. 이 과정이 끝나면 자신 있게 테스트를 작성할 수 있게 됩니다! ?


?️ 목차

  1. 테스트 소개
  2. 단위 테스트
  3. Axios를 사용한 통합 테스트
  4. 결론

? 테스트 소개

테스트에는 다양한 조건에서 코드가 예상대로 작동하는지 확인하는 작업이 포함됩니다. 인기 있는 테스트 라이브러리인 Jest를 사용하면 두 가지 주요 테스트 유형을 작성할 수 있습니다.

  • 단위 테스트: 개별 기능이나 구성요소를 개별적으로 테스트합니다.
  • 통합 테스트: 애플리케이션의 다양한 부분이 어떻게 함께 작동하는지 확인하세요.

이러한 테스트는 버그를 조기에 발견하고 회귀 문제를 줄이며 높은 코드 품질을 유지하는 데 도움이 됩니다. 단위 테스트부터 살펴보겠습니다! ?


? 단위 테스트

단위 테스트는 개별 기능이나 구성 요소를 개별적으로 테스트하는 데 중점을 둡니다. 이는 코드의 각 작은 단위가 의도한 대로 독립적으로 작동하도록 보장합니다.

예: 합계 함수 테스트

다음은 두 숫자를 더하는 간단한 함수입니다.

// src/sum.js
export const sum = (a, b) => a + b;

단위 테스트 작성

테스트 파일 src/__tests__/sum.test.js를 만들고 다음을 작성합니다.

// src/__tests__/sum.test.js
import { sum } from '../sum';

describe('sum', () => {
  it('should add two numbers correctly', () => {
    expect(sum(1, 2)).toBe(3);
    expect(sum(-1, 1)).toBe(0);
  });
});

단위 테스트 실행

다음 명령을 사용하여 테스트를 실행하세요.

npx jest src/__tests__/sum.test.js

모든 것이 예상대로 작동하면 테스트에 통과했음을 확인하는 ✅가 표시됩니다.

Unit & Integration Testing


? Axios를 사용한 통합 테스트

통합 테스트는 애플리케이션의 다양한 부분이 서로 잘 작동하는지 확인합니다. Axios를 사용하여 API에서 사용자 데이터를 가져오는 함수를 테스트해 보겠습니다.

예: 사용자 데이터 가져오기

API에서 사용자 데이터를 검색하는 함수가 있다고 가정해 보겠습니다.

// src/apiService.js
import axios from 'axios';

export const fetchUserData = async (userId) => {
  const response = await axios.get(`https://jsonplaceholder.typicode.com/users/${userId}`);
  return response.data;
};

통합 테스트 작성

이 기능을 테스트하려면 src/__tests__/apiService.test.js 파일을 생성하세요. 실제 API 호출을 방지하기 위해 Axios를 모의합니다.

// src/sum.js
export const sum = (a, b) => a + b;

핵심 포인트:

  • jest.mock('axios'): 전체 Axios 라이브러리를 모의합니다.
  • mockResolvedValue: 성공적인 API 응답을 시뮬레이션합니다.
  • mockRejectedValue: API 오류를 시뮬레이션합니다.

통합 테스트 실행

다음 명령을 사용하여 테스트를 실행하세요.

// src/__tests__/sum.test.js
import { sum } from '../sum';

describe('sum', () => {
  it('should add two numbers correctly', () => {
    expect(sum(1, 2)).toBe(3);
    expect(sum(-1, 1)).toBe(0);
  });
});

성공하면 Jest는 성공 및 실패 시나리오에 대한 테스트를 모두 통과했는지 확인합니다. ✅

Unit & Integration Testing

? 결론

단위 및 통합 테스트는 안정적이고 유지 관리가 가능한 애플리케이션을 구축하는 데 필수적인 도구입니다. JestAxios를 사용하면 다음을 수행할 수 있습니다.

  • 단위 테스트로 개별 기능을 검증합니다.
  • 통합 테스트를 통해 모듈 간의 상호 작용을 검증합니다.

단위 및 통합 테스트는 코드가 개별적으로나 전체적으로 잘 작동하는지 확인하는 강력한 방법입니다. 지금 바로 코드베이스에 테스트를 추가하고 애플리케이션이 잘 테스트되었다는 사실을 알고 마음의 평화를 누리세요. 즐거운 코딩과 테스트를 즐겨보세요! ?‍?✨

위 내용은 단위 및 통합 테스트의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.