update report: add testcase stat to summary

This commit is contained in:
debugtalk
2018-12-28 10:57:27 +08:00
parent 162b0fa96e
commit 61b4b62765
4 changed files with 73 additions and 45 deletions

View File

@@ -121,7 +121,14 @@ class HttpRunner(object):
"""
summary = {
"success": True,
"stat": {},
"stat": {
"testcases": {
"total": len(tests_results),
"success": 0,
"fail": 0
},
"teststeps": {}
},
"time": {},
"platform": report.get_platform(),
"details": []
@@ -131,6 +138,11 @@ class HttpRunner(object):
testcase, result = tests_result
testcase_summary = report.get_summary(result)
if testcase_summary["success"]:
summary["stat"]["testcases"]["success"] += 1
else:
summary["stat"]["testcases"]["fail"] += 1
summary["success"] &= testcase_summary["success"]
testcase_summary["name"] = testcase.config.get("name")
@@ -138,7 +150,7 @@ class HttpRunner(object):
utils.print_io(in_out)
testcase_summary["in_out"] = in_out
report.aggregate_stat(summary["stat"], testcase_summary["stat"])
report.aggregate_stat(summary["stat"]["teststeps"], testcase_summary["stat"])
report.aggregate_stat(summary["time"], testcase_summary["time"])
summary["details"].append(testcase_summary)

View File

@@ -33,11 +33,21 @@ def get_summary(result):
Args:
result (instance): HtmlTestResult() instance
Returns:
dict: summary extracted from result.
{
"success": True,
"stat": {},
"time": {},
"records": []
}
"""
summary = {
"success": result.wasSuccessful(),
"stat": {
'testsRun': result.testsRun,
'total': result.testsRun,
'failures': len(result.failures),
'errors': len(result.errors),
'skipped': len(result.skipped),
@@ -45,7 +55,7 @@ def get_summary(result):
'unexpectedSuccesses': len(result.unexpectedSuccesses)
}
}
summary["stat"]["successes"] = summary["stat"]["testsRun"] \
summary["stat"]["successes"] = summary["stat"]["total"] \
- summary["stat"]["failures"] \
- summary["stat"]["errors"] \
- summary["stat"]["skipped"] \

View File

@@ -153,7 +153,6 @@
<h2>Summary</h2>
<table id="summary">
<tr>
<th>START AT</th>
<td colspan="4">{{time.start_datetime}}</td>
@@ -169,22 +168,14 @@
<td colspan="2">{{ platform.platform }}</td>
</tr>
<tr>
<th>TOTAL</th>
<th>SUCCESS</th>
<th>FAILED</th>
<th>ERROR</th>
<th>SKIPPED</th>
<!-- <th>ExpectedFailure</th>
<th>UnexpectedSuccess</th> -->
<th>STAT</th>
<th colspan="2">TESTCASES (success/fail)</th>
<th colspan="2">TESTSTEPS (success/fail/error/skip)</th>
</tr>
<tr>
<td>{{stat.testsRun}}</td>
<td>{{stat.successes}}</td>
<td>{{stat.failures}}</td>
<td>{{stat.errors}}</td>
<td>{{stat.skipped}}</td>
<!-- <td>{{stat.expectedFailures}}</td>
<td>{{stat.unexpectedSuccesses}}</td> -->
<td>total (details) =></td>
<td colspan="2">{{stat.testcases.total}} ({{stat.testcases.success}}/{{stat.testcases.fail}})</td>
<td colspan="2">{{stat.teststeps.total}} ({{stat.teststeps.successes}}/{{stat.teststeps.failures}}/{{stat.teststeps.errors}}/{{stat.teststeps.skipped}})</td>
</tr>
</table>
@@ -195,7 +186,7 @@
<h3>{{test_suite_summary.name}}</h3>
<table id="suite_{{suite_index}}" class="details">
<tr>
<td>TOTAL: {{test_suite_summary.stat.testsRun}}</td>
<td>TOTAL: {{test_suite_summary.stat.total}}</td>
<td>SUCCESS: {{test_suite_summary.stat.successes}}</td>
<td>FAILED: {{test_suite_summary.stat.failures}}</td>
<td>ERROR: {{test_suite_summary.stat.errors}}</td>