总结
1.把测试案例的结果写入文件
- 在测试套件中,修改用于执行测试用例集的runner,增加一个上下文管理器with语句,例如:
with open('文件名', 'w+') as f
,f表示一个流对象,然后把流对象加入TextTestRunner类的参数stream中,例如:runner = TextTestRunner(stream=f)
,然后运行,项目中就能生成一个文件,文件中的内容就是测试用例打印出的内容;
2.使用html-testRunner模块将测试结果写入HTML页面
-
HtmlTest runner是一个单元测试运行器,可以将测试结果保存在Html文件中;
-
首先需要安装模块:
pip install html-testRunner
,安装后调用时显示为HtmlTestRunner; -
使用时需要导入HtmlTestRunner中的HTMLTestRunner类;
-
再将测试中的TextTestRunner类替换成HTMLTestRunner类,这里需要注意一下HTMLTestRunner自带的参数,output表示结果保存到哪里、verbosity显示用例打印内容、stream表示标准输出、report_name文件名、report_title标题、descriptions描述等;
-
然后直接运行,就会在html中生成一个html文件,如果再次运行会生成一个新的html文件;
3.unittest实现自动发现
我们可以使用unittest.defaultTestLoader类中的discover()方法实现自动根据测试目录start_dir匹配查找测试用例文件*(test.py)*,并将查找到的测试用例组装到测试套件,然后通过run()方法执行discover,用法如:`discover = defaultTestLoader.discover(start_dir=start_dir, pattern=r'test.py')`;