런타임 중에 테스트 이름과 테스트 결과를 얻고 싶습니다. 스크립트에는 setup 및 tearDown 메서드가 있습니다. 및 설치 방법에서 테스트 이름을 가져오고 tearDown에서 테스트 결과를 가져와 실행 시간을 테스트해야합니다.pytest에서 런타임 동안 테스트 이름과 테스트 결과를 얻는 방법
답변
unittest.TestCase.id() 클래스 이름, 메소드 이름을 포함한 전체 세부 정보를 반환합니다. 여기에서 테스트 메소드 이름을 추출 할 수 있습니다. 테스트를 실행할 때 예외가 있는지 확인하여 결과를 가져올 수 있습니다. 테스트가 실패하면 sys.exc_info()가 None을 반환하면 테스트가 실패하고 그렇지 않으면 테스트가 통과합니다. 그렇지 않으면 else 테스트가 실패합니다.
어제 같은 문제에 직면하고
공식 매뉴얼은 나를 위해 도움이되었습니다 :-) 나는 그것을 해결 : http://pytest.org/latest/plugins.html#hook-specification-and-validation
매직 pytest 특별한 후크를 사용하여이 실현. 이 훅은 "pytest_runtest_protocol"입니다. 예외 캡처 및보고 훅 호출을 포함하여 주어진 테스트 항목에 대해 runtest_setup/call/teardown 프로토콜을 구현합니다.
테스트가 완료되면 (시작 또는 분해 또는 테스트와 같이) 호출되는이 후크입니다. 내가 시작, 해체 및 test_tc15 기능을 가지고 test_rest_author.py 파일에서
./rest/
├── conftest.py
├── __init__.py
└── test_rest_author.py
,하지만 난 단지 test_tc15의 FUNC에 대한 결과와 이름을 표시하려면 :
나는 내 테스트 디렉토리에 다음 트리가 있습니다. conftest.py 파일에서
:
import pytest
from _pytest.runner import runtestprotocol
def pytest_runtest_protocol(item, nextitem):
reports = runtestprotocol(item, nextitem=nextitem)
for report in reports:
if report.when == 'call':
print '\n%s --- %s' % (item.name, report.outcome)
return True
을하고 스크립트를 실행하는 경우 다음을 수행 할 수 있습니다 (경고 : http://pytest.org/latest/plugins.html#conftest-py-local-per-directory-plugins : 같은 이름의 파일을 만들고, 그 자세한 내용은 pytest 특수 파일,의 PLS이 읽기)
$ py.test ./rest/test_rest_author.py
====== test session starts ======
/test_rest_author.py::TestREST::test_tc15 PASSED
test_tc15 --- passed
======== 1 passed in 1.47 seconds =======
이익
:-) : 결과 및 테스트의 이름 참조- 1. pytest에서 테스트 건너 뛰기
- 2. Rspec에서 테스트 결과를 얻는 방법
- 3. ltp 테스트 케이스의 테스트 결과를 분석하는 방법
- 4. 파일에있는 모든 레이크 테스트 결과를 얻는 방법
- 5. TFS 서버에서 테스트 계획 결과를 얻는 방법
- 6. 테스트 결과를 테스트 케이스에 연결하는 방법?
- 7. 테스트 러너로부터 JUnit 테스트 결과를 얻는 방법은 무엇입니까?
- 8. 테스트 케이스를 얻는 방법
- 9. 테스트 클라이언트를 얻는 방법
- 10. 런타임 분석에서 테스트 생성
- 11. 테스트 결과를 프로그래밍 방식으로 얻는 방법은 무엇입니까?
- 12. WCETK : 테스트 결과를 해석하는 방법
- 13. Jenkins의 Email-ext를 사용하여 Junit 테스트 결과를 얻는 방법
- 14. TFS Rest API를 사용하여 단위 테스트 결과를 얻는 방법?
- 15. 테스트 실행에서 건너 뛴 테스트 결과를 제거하십시오.
- 16. TCPDump 테스트 데이터를 얻는 방법
- 17. Fitnesse 테스트 이름을 얻는 방법
- 18. 랠리 : 특정 테스트 세트의 최신 테스트 결과를 가져 오는 방법
- 19. 테스트 결과를 Excel로 내보내기
- 20. /dev/ttyUSB0에서 테스트 결과를 읽으십시오.
- 21. 런타임 동안 JFrame의 현재 크기를 얻는 방법
- 22. MSTest에서 테스트 결과 상태를 얻는 방법?
- 23. Firefox에서 런타임 오류 (자동 테스트)
- 24. pyTest에서 어설 션 수를보고하십시오.
- 25. cppunit에서 테스트 프로그램을 실행하는 동안 런타임 오류가 발생했습니다.
- 26. WEKA에서 결과를 얻는 방법
- 27. 새로운 스레드와 결과를 얻는 테스트 메소드 (NUnit 2.6)
- 28. 스팍 : 테스트 이름과 설정의 결과() 정리() 메소드
- 29. Visual Studio로드 테스트 결과를 데이터베이스에 저장하는 방법
- 30. JUnit 테스트 : 스레드에서 결과를 테스트하는 방법