> 백엔드 개발 > 파이썬 튜토리얼 > 표준 디렉터리 구조를 사용하여 Python에서 단위 테스트를 효과적으로 실행하는 방법은 무엇입니까?

표준 디렉터리 구조를 사용하여 Python에서 단위 테스트를 효과적으로 실행하는 방법은 무엇입니까?

Mary-Kate Olsen
풀어 주다: 2024-11-26 06:40:11
원래의
409명이 탐색했습니다.

How to Effectively Run Unit Tests in Python with a Standard Directory Structure?

일반적인 디렉터리 구조로 단위 테스트 실행

Python의 공통 모듈 구조에는 아래와 같이 단위 테스트를 전용 테스트 디렉터리로 분리하는 경우가 많습니다. :

new_project/
    antigravity/
        antigravity.py
    test/
        test_antigravity.py
    setup.py
    etc.
로그인 후 복사

이러한 테스트를 실행하려면 단순히 Python을 실행하는 것 이상이 필요합니다. 테스트 디렉토리의 test_antigravity.py. 반중력은 가져오기 경로에 없기 때문에 이 접근 방식은 실패합니다.

대신 테스트를 실행하는 가장 간단한 방법은 unittest 명령줄 인터페이스를 사용하는 것입니다. 이 유틸리티는 자동으로 sys.path에 디렉토리를 추가하여 모듈을 가져올 수 있도록 액세스할 수 있게 만듭니다.

다음과 같은 디렉토리 구조의 경우:

new_project
├── antigravity.py
└── test_antigravity.py
로그인 후 복사

다음과 같이 테스트를 실행하세요.

$ cd new_project
$ python -m unittest test_antigravity
로그인 후 복사

귀하와 같은 구조의 경우 반중력 및 테스트 디렉터리 모두에 패키지가 있으면 테스트에서 평소처럼 반중력 내 모듈을 가져올 수 있습니다. 모듈:

# import the package
import antigravity

# import the antigravity module
from antigravity import antigravity

# or an object inside the antigravity module
from antigravity.antigravity import my_object
로그인 후 복사

특정 테스트 실행:

특정 테스트 모듈(예: test_antigravity.py)을 실행하려면:

$ cd new_project
$ python -m unittest test.test_antigravity
로그인 후 복사

단일 테스트 사례를 실행하거나 방법:

$ python -m unittest test.test_antigravity.GravityTestCase
$ python -m unittest test.test_antigravity.GravityTestCase.test_method
로그인 후 복사

모든 테스트 실행:

테스트 검색을 사용하여 모든 테스트를 자동으로 검색하고 실행합니다.

$ cd new_project
$ python -m unittest discover
로그인 후 복사

이렇게 하면 실행됩니다. 테스트 패키지 내의 모든 test*.py 모듈. 자세한 내용은 디스커버리 공식 문서를 참고하세요.

위 내용은 표준 디렉터리 구조를 사용하여 Python에서 단위 테스트를 효과적으로 실행하는 방법은 무엇입니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

원천:php.cn
본 웹사이트의 성명
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.
저자별 최신 기사
인기 튜토리얼
더>
최신 다운로드
더>
웹 효과
웹사이트 소스 코드
웹사이트 자료
프론트엔드 템플릿