Python (5/19 Team Activity)

김소은·2025년 5월 19일

pytest로 유닛 테스트 하기

✅ 유닛 테스트(Unit Test)란?

소프트웨어 개발에서 가장 작은 단위(보통 함수나 메서드)를 독립적으로 테스트하는 것

✅ 왜 유닛 테스트를 할까?

이유설명
🛠 코드가 원하는 대로 동작하는지 자동 검증수동으로 일일이 확인할 필요 없음
🔄 리팩터링/수정 시 실수 방지기존 기능이 망가지지 않았는지 확인 가능
🧩 모듈별 개발 및 디버깅에 유리전체 앱이 없어도 개별 함수만 테스트 가능
🤝 협업 시 신뢰성 확보다른 개발자가 고쳤을 때 기능이 망가졌는지 바로 알 수 있음

✅ 간단한 예시

함수: 두 수의 합을 리턴하는 함수

def add(a, b):
    return a + b

유닛 테스트: "add 함수에 2와 3을 넣었을 때 결과가 5가 맞는지"를 확인하는 유닛 테스트

def test_add():
    assert add(2, 3) == 5

✅ 유닛 테스트의 특징

특징설명
작고 빠름한 번 실행하는 데 0.01초도 안 걸릴 수 있음
독립적다른 함수나 시스템에 의존하지 않음
반복 실행 가능언제든지 자동으로 실행해서 신뢰성 검증

🎯 add() 함수를 pytest로 테스트 하기(VSCode 기준)

🧩 1단계: 작업 폴더 만들기

mkdir pytest
cd pytest
code .

code . 를 입력하면 생성된 pytest 폴더가 열림.

🧩 2단계: calculator.py 만들기

def add(a, b):
    return a + b

🧩 3단계: 가상환경 만들고 pytest 설치

python3 -m venv venv       # 최초 한 번만
source venv/bin/activate   # 매번 터미널 열 때마다
pip install pytest

설치 확인:

pytest --version

🧩 4단계: 테스트 코드 작성

test_calculator.py라는 새 파일 생성 후 아래 입력:

from calculator import add

def test_add():
    assert add(2, 3) == 5
    assert add(-1, 1) == 0
    assert add(0, 0) == 0

test_로 시작하는 파일명, 함수명 필수! 그래야 pytest가 자동으로 찾습니다.

🧩 5단계: VS Code에서 pytest 설정

  1. Cmd+Shift+P (Mac) 또는 Ctrl+Shift+P (Win/Linux)
  2. Python: Configure Tests 입력 → 선택
  3. 프레임워크로 pytest 선택
  4. 테스트 디렉토리로 .(현재 폴더) 선택

🧩 6단계: 테스트 실행

🎉 성공!

이제 add() 함수에 대한 유닛 테스트가 pytest로 성공적으로 돌아갑니다!
앞으로 팀과제에서 어떤 함수든 이렇게 테스트할 수 있어요.

profile
개발자

0개의 댓글