我的问题是关于python unittest报告。 我正在使用xmlrunner包生成Jenkins使用的xunit输出。除此之外,我想要生成一个html输出或以一个漂亮的自定义格式打印出输出。 注意:我已经了解HTMLTestRunner并且它并没有让我高兴。 有3个问题:
问题是如何迭代测试结果?
这是我的测试跑步者代码:
import unittest
import os, sys
import xmlrunner
def getSuites(root):
testSets = {"ts1":["tc1","tc2"], "ts2":["tc3","tc4"]}
suites = unittest.TestSuite()
for ts_name,ts in testSets.iteritems():
ts_dir = "%s/%s" % (root, ts_name)
sys.path.append(ts_dir)
print "ts_dir = %s" % ts_dir
for tc in ts:
module = __import__(tc,{},{},['1'])
suites.addTest(unittest.TestLoader().loadTestsFromModule(module))
return suites
if __name__ == "__main__":
root = os.path.dirname(os.path.abspath(__file__))
suites = getSuites(root)
results = xmlrunner.XMLTestRunner(output='test_reports').run(suites)
注意:
for r in results:
print r
抛出一个异常,说_XMLTestResult不可迭代。 感谢
答案 0 :(得分:1)
for x in results.successes + results.failures + results.errors:
print x
#print x.get_description(), x.outcome