Django Web Framework/Django Pytest

pytest 확장 라이브러리 정리

bluebamus 2023. 4. 9.

1. pytest-cov: 이 라이브러리는 pytest로 테스트 커버리지를 측정하는 데 사용됩니다. HTML, XML 및 JSON과 같은 다양한 형식으로 커버리지 보고서를 생성합니다. Python 코드와 Cython 코드 모두의 적용 범위를 측정하는 데 사용할 수 있습니다.


2. pytest-html: 이 라이브러리는 pytest용 HTML 보고서를 생성하는 데 사용됩니다. 통과, 실패 및 건너뛴 테스트 사례를 포함하여 테스트 결과에 대한 자세한 보고서를 제공합니다.


3. pytest-xdist: 이 라이브러리는 pytest와 병렬로 테스트를 실행하는 데 사용됩니다. 여러 CPU 또는 네트워크의 여러 시스템에서 테스트를 실행할 수 있습니다.


4. pytest-bdd: 이 라이브러리는 동작 기반 개발(BDD) 스타일로 테스트를 작성하고 실행하는 데 사용됩니다.

 "given", "when" 및 "then"과 같은 키워드를 사용하여 자연어로 테스트를 작성할 수 있습니다.


5. pytest-flake8: 이 라이브러리는 pytest로 코드 품질을 확인하는 데 사용됩니다. Python용 코드 린터인 Flake8을 실행하여 스타일 위반, 구문 오류 및 기타 문제를 확인합니다.


6. pytest-django: 이 라이브러리는 pytest로 Django 프로젝트에 대한 테스트를 작성하고 실행하는 데 사용됩니다. 데이터베이스 액세스 및 템플릿과 같은 Django 관련 기능을 테스트하기 위한 고정 장치를 제공합니다.


7. pytest-mock: 이 라이브러리는 목 객체를 사용하는 테스트를 작성하는 데 사용됩니다. 테스트에서 모의 ​​개체를 만들고 사용하기 위한 간단한 API를 제공합니다.

 

8. pytest-timeout: 이 라이브러리는 pytest로 테스트에 대한 시간 제한을 설정하는 데 사용됩니다. 테스트가 너무 오래 실행되는 경우 테스트를 중단하여 무한정 실행되는 것을 방지할 수 있습니다.


9. pytest-sugar: 이 라이브러리는 pytest의 출력을 향상시키는 데 사용됩니다. 기본 출력보다 더 다채롭고 자세한 테스트 보고서를 제공합니다.


10. pytest-random-order: 이 라이브러리는 pytest로 테스트가 실행되는 순서를 무작위화하는 데 사용됩니다. 순서 종속 테스트를 식별하거나 테스트 병렬화를 개선하는 데 유용할 수 있습니다.


11. pytest-factoryboy: 이 라이브러리는 pytest로 테스트 픽스처를 만드는 데 사용됩니다. 테스트 데이터를 생성하는 편리한 방법을 제공하는 Factory Boy 라이브러리와 통합됩니다.


12. pytest-mypy: 이 라이브러리는 pytest로 타입 힌트를 확인하는 데 사용됩니다. Python용 정적 유형 검사기인 Mypy를 실행하여 코드의 유형 오류 및 불일치를 확인합니다.


13. pytest-capturelog: 이 라이브러리는 pytest로 테스트하는 동안 로그 메시지를 캡처하는 데 사용됩니다. 이를 통해 테스트는 테스트 실행 중에 특정 로그 메시지가 생성되었음을 어설션할 수 있습니다.


14. pytest-cov-report: 이 라이브러리는 pytest로 Python 코드에 대한 커버리지 보고서를 생성하는 데 사용됩니다. 다양한 형식으로 커버리지 보고서를 생성하기 위한 명령줄 인터페이스를 제공합니다.

 

15. pytest-selenium: 이 라이브러리는 pytest로 웹 브라우저 테스트를 자동화하는 데 사용됩니다. Chrome 또는 Firefox와 같은 웹 브라우저를 제어하기 위한 고정 장치를 제공하고 웹 페이지에서 사용자 상호 작용을 시뮬레이션하기 위해 테스트를 작성할 수 있습니다.


15. pytest-cram: 이 라이브러리는 pytest로 명령줄 애플리케이션을 테스트하는 데 사용됩니다. 명령줄 입력 및 출력을 시뮬레이트하는 테스트를 작성하는 방법을 제공하므로 명령줄 응용 프로그램을 더 쉽게 테스트할 수 있습니다.


16. pytest-asyncio: 이 라이브러리는 pytest로 비동기 테스트를 작성하고 실행하는 데 사용됩니다. 테스트에서 asyncio 이벤트 루프를 실행하기 위한 고정 장치를 제공하고 테스트를 비동기식 스타일로 작성할 수 있습니다.


17. pytest-datadir: 이 라이브러리는 pytest로 테스트 데이터 파일에 액세스하는 데 사용됩니다. 전용 디렉터리에서 데이터 파일에 액세스하기 위한 고정 장치를 제공하므로 외부 데이터에 의존하는 테스트를 더 쉽게 작성할 수 있습니다.


18. pytest-ordering: 이 라이브러리는 pytest로 테스트를 주문하는 데 사용됩니다. 테스트가 정의된 순서나 실행되어야 하는 순서와 같은 특정 기준에 따라 테스트를 정렬할 수 있습니다.


19. pytest-timeit: 이 라이브러리는 pytest로 테스트 실행 시간을 측정하는 데 사용됩니다. timeit 모듈로 코드를 실행하기 위한 고정 장치를 제공하고 특정 코드 스니펫의 성능을 측정하기 위해 테스트를 작성할 수 있습니다.

 

20. pytest-assume: pytest-assume을 사용하면 테스트 중에 애플리케이션 상태에 대한 가정을 할 수 있습니다. 가정이 실패하면 테스트가 실패로 표시되지 않고 대신 "실패한 것으로 가정됨"으로 표시됩니다. 이는 복잡한 전제 조건이 있는 테스트의 문제를 식별하거나 알려진 실패를 무시하는 데 유용할 수 있습니다.

 

21. pytest-repeat: pytest-repeat를 사용하면 테스트를 여러 번 실행할 수 있습니다. 이는 불안정한 테스트를 감지하거나 다른 구성으로 테스트를 실행하는 데 유용할 수 있습니다.

22. pytest-datadir: pytest-datadir은 파일이나 디렉터리에서 테스트 데이터를 로드하는 방법을 제공합니다. 이는 외부 파일에서 작동하는 기능을 테스트하거나 응용 프로그램이 다양한 유형의 입력을 올바르게 처리하는지 확인하는 데 유용할 수 있습니다.

댓글