diff --git a/httprunner/report/html/result.py b/httprunner/report/html/result.py index e9d88f2f..9cb16ab3 100644 --- a/httprunner/report/html/result.py +++ b/httprunner/report/html/result.py @@ -7,21 +7,18 @@ from httprunner.v3.schema import Record class HtmlTestResult(unittest.TextTestResult): - """ A html result class that can generate formatted html results. - Used by TextTestRunner. + """ A html result class that can generate formatted html results, used by TextTestRunner. + Each testcase is corresponding to one HtmlTestResult instance """ def __init__(self, stream, descriptions, verbosity): super(HtmlTestResult, self).__init__(stream, descriptions, verbosity) - self.records = [] + self.record = Record() def _record_test(self, test, status, attachment=''): - record = Record( - name=test.shortDescription(), - status=status, - attachment=attachment, - meta_datas=test.meta_datas - ) - self.records.append(record) + self.record.name = test.shortDescription() + self.record.status = status + self.record.attachment = attachment + self.record.meta_datas = test.meta_datas def startTestRun(self): self.start_at = time.time() diff --git a/httprunner/report/html/template.html b/httprunner/report/html/template.html index a205a73f..9492e42c 100644 --- a/httprunner/report/html/template.html +++ b/httprunner/report/html/template.html @@ -181,17 +181,10 @@

Details

- {% for test_suite_summary in details %} - {% set suite_index = loop.index %} -

{{test_suite_summary.name}}

- - - - - - - - + {% for testcase_summary in details %} + {% set testcase_index = loop.index %} +

{{testcase_summary.name}}

+
TOTAL: {{test_suite_summary.stat.total}}SUCCESS: {{test_suite_summary.stat.successes}}FAILED: {{test_suite_summary.stat.failures}}ERROR: {{test_suite_summary.stat.errors}}SKIPPED: {{test_suite_summary.stat.skipped}}
@@ -199,22 +192,22 @@ - {% for record in test_suite_summary.records %} - {% set record_index = "{}_{}".format(suite_index, loop.index) %} - {% set record_meta_datas = record.meta_datas %} - + {% set record_meta_datas = testcase_summary.record.meta_datas %} + {% for meta_data in record_meta_datas %} + {% set step_index = "{}_{}".format(testcase_index, loop.index) %} +
Status NameDetail
{{record.status}} {{record.name}} {{ record.response_time }} ms - {% for meta_data in record_meta_datas %} - {% set meta_data_index = "{}_{}".format(record_index, loop.index) %} - log-{{loop.index}} -