티스토리 뷰
보통 unittest 는 console 환경에서 돌리는게 일반적 입니다. 하지만 아무래도 GUI 적으로 이쁜 report 가 있으면 좋겠죠?
이를 위한 HtmlTestRunner 패키지가 존재합니다.
기존에 있는 것은 몇 가지 문제가 있어 수정한 것을 공유드립니다.
1. TestSuite 를 만들어서 돌리면, 레포트가 각각 유닛테스트로 레포트가 만들어 지는 문제
2. unittest short description 이 나오지 않는 문제
3. unittest 수행 시 나오는 로그들 (stdout) 에서 개행문자가 무시 되는 경우 ( \t \r \n 같은 것들)
그리고 여기에 기능적으로 마이너 한것을 추가하였습니다.
1. 유닛테스트를 수행한 시스템 정보 (os / python 버전 / user name)
해당 git 에서 example.py 를 실행 시키시면, tests/ 에 있는 테스트가 실행됩니다. 그리고 레포트는 example_suite/ 경로에 저장됩니다.
여기에 각각 사용자분들 환경에 맞게끔 수정하시면 될겁니다.
example.py 를 보시면, tests 폴더에 있는, unittest 를 로드하여 TestSuite 로 만드는 것이 보입니다.
그리고 HTMLTestRunner(...) 에서 파라미터로, 기타 Note 가 필요하시면 'Note' : 에다가 내용을 추가해 주시면 됩니다.
GitHub 주소 :
https://github.com/seounghun-chung/HtmlTestRunner
PyQt5 GUI App :
https://github.com/seounghun-chung/PyTestToolPlatform
추가적으로 아마 일반적인 python app 에 대한 unittest 수행을 위해서라면 해당 패키지는 거의 쓸일이 없을거에요. 하지만
python을 이용해서 다른 환경 SW를 테스트할 때 레포트 용으로 사용하시면 될 것 같습니다. (Selenium 을 이용한 웹페이지 unittest 및 임베디드 환경에서 제품을 테스트 후 레포트)
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 | from unittest import TestLoader, TestSuite from HtmlTestRunner import HTMLTestRunner from tests.test import TestStringMethods from tests.test2 import My_Tests example_tests = TestLoader().loadTestsFromTestCase(TestStringMethods) example2_tests = TestLoader().loadTestsFromTestCase(My_Tests) suite = TestSuite([example_tests, example2_tests]) template_args = {'Note' : 'test sample'} runner = HTMLTestRunner(output='example_suite', report_name='Test Result V0.0.1', report_title='Test Result V0.0.1', template_args=template_args, combine_reports = True) runner.run(suite) | cs |
<코드1. example.py>
<그림1. Test report 결과 화면>
<그림2. 기존 개행문자가 안보이던 이슈 해결 및 Short description 추가>
'파이썬' 카테고리의 다른 글
최소한의 용량으로 파이썬 패키지 배포 (0) | 2019.01.29 |
---|---|
파이썬 정규표현식 치환 replace 패턴 사용법 (0) | 2018.11.11 |
python3.6 cython mingw32 windows사용법 (0) | 2018.09.01 |
pyqt5 에서 exception 발생시 종료 방지 방법 (7) | 2018.08.03 |
pyqt5 pyinstaller GUI가 이상하게 나올 때 (0) | 2018.07.01 |
- Total
- Today
- Yesterday
- python 실행환경 배포
- a1000 mini
- exe없이 파이썬 배포
- 무선랜카드
- Python
- 속도
- 파이썬 배포판
- 가상환경
- py 실행환경
- SQ인증 #동양열처리 #시화공단 #안산 #시흥 #금속열처리 #열처리
- iptime
- 파이썬배포
- 파이썬
- 공유기설정
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | |||
5 | 6 | 7 | 8 | 9 | 10 | 11 |
12 | 13 | 14 | 15 | 16 | 17 | 18 |
19 | 20 | 21 | 22 | 23 | 24 | 25 |
26 | 27 | 28 | 29 | 30 | 31 |