XML 형식의 테스트 실행 결과
xml 파일에서 테스트 실행의 세부 사항을 생성 할 수 있습니다. 이 xml 파일은 주로 테스트 결과를 투영하는 대시 보드가있는 경우에 유용합니다. 이러한 경우 xml을 구문 분석하여 실행 세부 정보를 얻을 수 있습니다.
이제 test_multiplcation.py에서 테스트를 실행하고 다음을 실행하여 xml을 생성합니다.
pytest test_multiplication.py -v --junitxml="result.xml"
이제 result.xml이 다음 데이터로 생성되는 것을 볼 수 있습니다.
<?xml version = "1.0" encoding = "utf-8"?>
<testsuite errors = "0" failures = "1"
name = "pytest" skips = "0" tests = "4" time = "0.061">
<testcase classname = "test_multiplication"
file = "test_multiplication.py"
line = "2" name = "test_multiplication_11[1-11]"
time = "0.00117516517639>
</testcase>
<testcase classname = "test_multiplication"
file = "test_multiplication.py"
line = "2" name = "test_multiplication_11[2-22]"
time = "0.00155973434448">
</testcase>
<testcase classname = "test_multiplication"
file = "test_multiplication.py"
line = "2" name = "test_multiplication_11[3-35]" time = "0.00144290924072">
failure message = "assert (11 * 3) == 35">num = 3, output = 35
@pytest.mark.parametrize("num,
output",[(1,11),(2,22),(3,35),(4,44)])
def test_multiplication_11(num, output):>
assert 11*num == output
E assert (11 * 3) == 35
test_multiplication.py:5: AssertionErro
</failure>
</testcase>
<testcase classname = "test_multiplication"
file = "test_multiplication.py"
line = "2" name = "test_multiplication_11[4-44]"
time = "0.000945091247559">
</testcase>
</testsuite>
여기, 태그 <testsuit> 4 개의 테스트가 있었고 실패 횟수는 1 개로 요약되어 있습니다.
태그 <testcase> 실행 된 각 테스트의 세부 정보를 제공합니다.
<failure> 태그는 실패한 테스트 코드의 세부 정보를 제공합니다.