#Pytest

8 편의 글

파이썬 테스트 #7 CI에서 돌리기: 사람이 잊어도 기계는 잊지 않는다
5 분 소요

파이썬 테스트 #7 CI에서 돌리기: 사람이 잊어도 기계는 잊지 않는다

GitHub Actions로 pytest를 자동 실행하는 CI 워크플로를 만듭니다. uv 캐시, 파이썬 버전 매트릭스, 커버리지 PR 코멘트, pre-commit, 느린 테스트 분리까지 정리하며 시리즈를 마무리합니다.

파이썬 테스트 #6 테스트 설계: 좋은 테스트와 커버리지 읽는 법
6 분 소요

파이썬 테스트 #6 테스트 설계: 좋은 테스트와 커버리지 읽는 법

테스트 설계의 기본기인 AAA 패턴과 동작 중심 테스트부터 테스트 더블 용어 정리, 플레이키 테스트 대응, pytest-cov 커버리지 숫자를 올바르게 읽는 법까지 다룹니다.

파이썬 테스트 #5 외부 세계 테스트: 파일, HTTP, DB, 웹 프레임워크
6 분 소요

파이썬 테스트 #5 외부 세계 테스트: 파일, HTTP, DB, 웹 프레임워크

mock으로 다 막은 테스트는 진짜 동작을 보장하지 못합니다. 파일은 tmp_path로 진짜를 쓰고, HTTP는 respx로 경계만 막고, DB는 트랜잭션 롤백으로 되돌리는 외부 세계 테스트 전략을 정리합니다.

파이썬 테스트 #4 mock과 monkeypatch: 통제할 수 없는 것을 통제하기
6 분 소요

파이썬 테스트 #4 mock과 monkeypatch: 통제할 수 없는 것을 통제하기

시간, 랜덤, 외부 API처럼 실행할 때마다 결과가 달라지는 의존성을 monkeypatch와 unittest.mock으로 고정하는 방법을 다룹니다. patch 경로 함정과 과잉 mock의 경계까지 정리합니다.

파이썬 테스트 #3 parametrize와 마커: 케이스를 늘리고 골라 돌리기
5 분 소요

파이썬 테스트 #3 parametrize와 마커: 케이스를 늘리고 골라 돌리기

pytest의 @pytest.mark.parametrize로 입력만 다른 테스트를 케이스 표 하나로 합치고, skip·skipif·xfail과 커스텀 마커, -m·-k 옵션으로 원하는 테스트만 골라 실행하는 방법을 정리합니다.

파이썬 테스트 #2 픽스처: 준비와 정리를 주입받기
6 분 소요

파이썬 테스트 #2 픽스처: 준비와 정리를 주입받기

@pytest.fixture로 테스트의 준비 코드를 주입받는 방법을 다룹니다. yield 티어다운, scope 트레이드오프, conftest.py 공유, tmp_path 같은 내장 픽스처까지 정리합니다.

파이썬 테스트 #1 pytest 시작: assert 하나로 충분한 이유
6 분 소요

파이썬 테스트 #1 pytest 시작: assert 하나로 충분한 이유

pytest를 설치하고 assert 하나로 첫 테스트를 작성하는 방법부터 unittest와의 차이, 실패 출력 읽는 법, 테스트 디스커버리 규칙까지 정리합니다.

모던 파이썬 실전 #6 테스트와 배포 — pytest, Docker, Railway/Fly
7 분 소요

모던 파이썬 실전 #6 테스트와 배포 — pytest, Docker, Railway/Fly

pytest + httpx로 FastAPI 통합 테스트, 의존성 오버라이드로 격리, Docker 멀티스테이지 빌드, Railway/Fly 클라우드 배포까지 정리합니다.