py.test 내부 지원 중단 경고를 억제하는 방법
pytest의 내부 지원 중단 경고를 억제하는 방법이 있습니까?
컨텍스트 : 테스트 스위트를에서 nose
으로 이식하는 데 어려움을 평가 하려고 pytest
합니다. 이 제품군은 상당히 크고 nose
스타일 yield
기반 테스트 생성기를 많이 사용합니다 .
먼저 기존 테스트가 pytest로 통과 하는지 확인한 다음 테스트 생성기를 parameterized
.
$ pytest path-to-test-folder
pytest 3.0.4로 실행 하는 것은 다음 페이지와 페이지에 의해 완전히 지배됩니다.
WC1 ~repos/numpy/numpy/lib/tests/test_twodim_base.py yield tests are deprecated, and scheduled to be removed in pytest 4.0
이러한 경고를 해제하는 방법이 있습니까?
에서 pytest --help
:
--disable-pytest-warnings
disable warnings summary, overrides -r w flag
pytest -p no:warnings
, 또는 pytest.ini 또는 tox.ini에 다음을 추가하십시오.
[pytest]
addopts = -p no:warnings
결과는 경고 표시없이 녹색으로 표시됩니다. https://docs.pytest.org/en/latest/warnings.html#disabling-warnings-summary 에서 설명서를 참조하십시오 .
항상 경고를 숨기면 중요한 경고를 놓칠 수 있습니다.
모든 경고를 숨기는 것이 아니라 관련없는 경고 만 숨기고 싶지 않다고 생각합니다. 그리고이 경우 가져온 파이썬 모듈의 폐기 경고입니다.
경고 캡처 에 대한 pytest 문서를 읽었습니다 .
-W 명령 줄 옵션과 filterwarnings ini 옵션은 모두 Python의 자체 -W 옵션 및 warnings.simplefilter를 기반으로 하므로 다른 예제와 고급 사용법은 Python 문서의 해당 섹션을 참조하세요.
따라서 파이썬의 -W
옵션으로 경고를 필터링 할 수 있습니다 !
실행할 때 pytest
모든 필터를 표시하기 때문에 필터 를 완전히 제거 하는 것으로 보이며 기본 경고 필터DeprecationWarning
에 대한 Python의 문서 는 다음과 같이 명확하게 말합니다.
일반 릴리스 빌드에서 기본 경고 필터에는 다음 항목이 있습니다 (우선 순위 순).
default::DeprecationWarning:__main__ ignore::DeprecationWarning ignore::PendingDeprecationWarning ignore::ImportWarning ignore::ResourceWarning
따라서 귀하의 경우 무시하려는 경고 유형을 필터링하려면 다음과 같이 옵션을 사용 DeprecationWarning
하여 pytest 명령을 실행하십시오 -W
.
$ pytest path-to-test-folder -W ignore::DeprecationWarning
편집 : colini 의 의견에서 모듈별로 필터링이 가능합니다. 모든 sqlalchemy의 지원 중단 경고를 무시하는 예 :
ignore::DeprecationWarning:sqlalchemy.*:
그런 다음 출력에 너무 많은 노이즈를 생성하는 설치된 모듈을 나열 할 수 있습니다. pytest
명령 줄이 아닌 파일과 함께 사용 :
pytest.ini 파일에 이러한 필터를 나열하는 것이 좋습니다.
[pytest]
filterwarnings =
ignore::DeprecationWarning
모든 경고를 숨기고 싶지 않아서 pytest.ini
[pytest]
filterwarnings =
ignore::DeprecationWarning
참고 URL : https://stackoverflow.com/questions/40710094/how-to-suppress-py-test-internal-deprecation-warnings
'IT박스' 카테고리의 다른 글
AngularJS-서비스, 공장, 필터 등에 의존성 주입 (0) | 2020.12.11 |
---|---|
$ rootScope를 데이터 저장소로 사용하는 AngularJS (0) | 2020.12.11 |
돌아가서 SVN 체크인에 대한 설명을 편집 할 수 있습니까? (0) | 2020.12.10 |
NodeJS 앱의 기본 URL을 설정할 수 있습니까? (0) | 2020.12.10 |
파일 입력을 지우는 방법 (0) | 2020.12.10 |