pytest-timeout

소프트웨어 스크린 샷:
pytest-timeout
소프트웨어 정보:
버전: 0.3
업로드 날짜: 20 Feb 15
개발자: Floris Bruynooghe
라이센스: 무료
인기: 7

Rating: nan/5 (Total Votes: 0)

pytest - 시간 제한은 특정 시간 초과 후 테스트를 종료합니다 py.test에 대한 플러그인합니다. & nbsp; 수행 할 때 그래서 당신이 시간에 실행중인 모든 스레드의 스택 덤프를 얻을 것이다. 이 경우에 유용 예를 들면이다 지속적인 통합 (CI) 서버에서 테스트를 실행.
용법
를 통해 설치합니다 :
pytest - 타임 아웃을 설치 PIP
다음 중 하나를 명령 줄에서, 플러그인을 사용 :
py.test -p 시간 제한
또는보다 편리하게 테스트 모듈 내에서 또는 conftest.py :
pytest_plugins의 = '타임 아웃'
당신은 초 시간 제한을 설정하는 --timeout 매개 변수를 사용하여 제한 시간을 변경할 수 있습니다.
작동 방법
이 플러그인은 두 가지 방법 중 하나를 사용할 수 있습니다. 시스템이 SIGALRM 신호를 지원하는 경우 알람이 때 테스트 시작을 예약 할 것이며이 완료되면 취소. 알람이 시험 중에 만료되면 신호 처리기는 stderr로 실행중인 다른 스레드의 스택을 덤프 한 후 시험을 중단 pytest.fail ()를 사용합니다.
시스템이 SIGALRM을 지원하지 않거나 --nosigalrm 옵션이 사용 된 경우 타이머 스레드가 대신 사용됩니다. 그것이 os._exit를 사용하여 전체 py.test 프로세스를 종료하기 전에 stderr로 모든 스레드 스택을 덤프이 만료되기 전에 타이머가 취소되지 않으면, 다시 한번 (1).
SIGALRM 방법의 단점은 신호가 테스트 프레임 워크에 의해 사용된다는 점이다. 이 신호가 테스트중인 코드에 의해 사용하는 경우에는 --nosigalrm 옵션을 사용해야합니다. 타이머 스레드 그러나 제한하여 실행 한 각 테스트 한 타임 아웃 후 전체 과정이 중단되고 더 이상의 테스트가 실행되지 않는다는 사실에 대한 스레드를 생성하는 여분의 오버 헤드이다.

이 새로운 기능 해제 :

이 시간 초과를 지정하는 방법으로 PYTEST_TIMEOUT 환경 변수를 추가 (문제 # 2를 닫습니다).
더 마커를 유연하게 인수 구문 분석 : 지금의 위치 인수를 사용하는 방법을 지정할 수 있습니다.
플러그인은 현재 기본적으로 활성화되어 있습니다. 마커 일하는 것이 단순히되도록 구성 파일 또는 명령 행 타임 아웃 = 0을 지정할 필요가 없어진다.

0.2 버전의 새로운 기능 :

이 초기 코드를 Laurant 브랙에, @의 pytest.timeout (N) 구문을 사용하여 제한 시간 지연을 수정 덕분에 마커를 추가합니다.
제한 시간 마커 방법 키워드 인수를 사용하여 시간 제한 방법을 선택할 수 있습니다.
eventlet 및 gevent에 대한 미래 증거 지원 = 스레드를 --method하는 --nosigalrm 옵션의 이름을 바꿉니다. 힌트 로니 Pfannschmidt 감사합니다.
활성화하고 INI 파일을 사용하여 플러그인을 구성 할 수 있도록 구성 파일에 타임 아웃 timeout_method 항목을 추가합니다. 힌트를 홀거 Krekel와 로니 Pfannschmidt 감사합니다.
파이썬 2.6, 2.7 및 3.2에 대한 테스트 (고정).

이 요구 사항 :

이 파이썬
py.test

유사한 소프트웨어

importchecker
importchecker

15 Apr 15

pytest-marks
pytest-marks

15 Apr 15

tissue
tissue

15 Apr 15

코멘트 pytest-timeout

댓글을 찾을 수 없습니다
코멘트를 추가
이미지를 켜십시오!