import os
import xml.etree.ElementTree as ET
final_dir = '.final_001'
final_file = 'final.xml'
suite_node_list = []
run_errors=0
run_failures=0
run_skipped=0
run_tests=0
run_time=0
for file in os.listdir(final_dir):
file_path = os.path.relpath(os.path.join(final_dir, file))
try:
tree = ET.parse(file_path)
root = tree.getroot()
for child in root:
suite_node_list.append(child)
run_errors += int(child.attrib['errors'])
run_failures += int(child.attrib['failures'])
run_skipped += int(child.attrib['skipped'])
run_tests += int(child.attrib['tests'])
run_time += float(child.attrib['time'])
except:
print('parse xml fail!')
logfile = open(final_file, "w", encoding="utf-8")
logfile.write('<?xml version="1.0" encoding="utf-8"?>')
testsuites = ET.Element(
"testsuites",
errors=str(run_errors),
failures=str(run_failures),
skipped=str(run_skipped),
tests=str(run_tests),
time="%.3f" % run_time,
)
for suite_node in suite_node_list:
testsuites.append(suite_node)
logfile.write(ET.tostring(testsuites, encoding="unicode"))
logfile.close()
合并junitxml
最新推荐文章于 2024-05-17 14:57:03 发布