Skip to content

Commit ea89336

Browse files
Jonas Trappenbergdnozay
authored andcommitted
Report stdout/stderr by testcase instead of by suite
1 parent cbbb6f2 commit ea89336

File tree

1 file changed

+12
-22
lines changed

1 file changed

+12
-22
lines changed

xmlrunner/result.py

Lines changed: 12 additions & 22 deletions
Original file line numberDiff line numberDiff line change
@@ -486,28 +486,6 @@ def _report_testsuite(suite_name, tests, xml_document, parentElement,
486486
for test in tests:
487487
_XMLTestResult._report_testcase(test, testsuite, xml_document)
488488

489-
systemout = xml_document.createElement('system-out')
490-
testsuite.appendChild(systemout)
491-
492-
stdout = StringIO()
493-
for test in tests:
494-
# Merge the stdout from the tests in a class
495-
if test.stdout is not None:
496-
stdout.write(test.stdout)
497-
_XMLTestResult._createCDATAsections(
498-
xml_document, systemout, stdout.getvalue())
499-
500-
systemerr = xml_document.createElement('system-err')
501-
testsuite.appendChild(systemerr)
502-
503-
stderr = StringIO()
504-
for test in tests:
505-
# Merge the stderr from the tests in a class
506-
if test.stderr is not None:
507-
stderr.write(test.stderr)
508-
_XMLTestResult._createCDATAsections(
509-
xml_document, systemerr, stderr.getvalue())
510-
511489
return testsuite
512490

513491
_report_testsuite = staticmethod(_report_testsuite)
@@ -550,6 +528,18 @@ def _report_testcase(test_result, xml_testsuite, xml_document):
550528
testcase.setAttribute('time', '%.3f' % test_result.elapsed_time)
551529
testcase.setAttribute('timestamp', test_result.timestamp)
552530

531+
if test_result.stdout:
532+
systemout = xml_document.createElement('system-out')
533+
testcase.appendChild(systemout)
534+
_XMLTestResult._createCDATAsections(
535+
xml_document, systemout, test_result.stdout)
536+
537+
if test_result.stderr:
538+
systemout = xml_document.createElement('system-err')
539+
testcase.appendChild(systemout)
540+
_XMLTestResult._createCDATAsections(
541+
xml_document, systemout, test_result.stderr)
542+
553543
if (test_result.outcome != test_result.SUCCESS):
554544
elem_name = ('failure', 'error', 'skipped')[test_result.outcome-1]
555545
failure = xml_document.createElement(elem_name)

0 commit comments

Comments
 (0)