适用于python 3的HTMLTestRunner以及为何在pycharm中执行后生成不了报告

  HTMLTestRunner为unittest单元测试框架的扩展,利用它提供的HTMLTestRunner()类来代替unittest单元测试框架的TextTestRunner()类,运行测试用例,生成HTML格式的测试报告。

       但原版的 HTMLTestRunner并不支持python 3。网上有许多修改版本,虫师编写的书籍《接口自动化测试框架》中提供了一个修改后的 HTMLTestRunner,可以通过下面的GitHub地址获取:https://github.com/defnngj/HTMLTestRunner

       步骤:先将HTMLTestRunner.py复制到你的python安装目录的Lib(注意不是libs)中 ,python默认的安装目录一般为:

适用于python 3的HTMLTestRunner以及为何在pycharm中执行后生成不了报告_第1张图片

然后在pycharm中包里新建一个HTMLTestRunner.py文件,将前面下载好的适用于python 3的HTMLTestRunner.py的内容复制到pycharm的HTMLTestRunner.py中,然后别处需要用到需要导入:

适用于python 3的HTMLTestRunner以及为何在pycharm中执行后生成不了报告_第2张图片

 

 在使用过程中,pycharm中执行run Unittests in XXX.py文件,发现执行通过了,也没有报错,但是却没有在指定目录生成html报告文件,为何?

那是因为一旦导入unittest模块,pycharm会自动识别以unittest的姿势去运行,如果想输出测试报告,就得以非unittest模式运行,也就是用python直接运行。若是用sublime来运行,可参考博客中的方法:https://www.cnblogs.com/yoyoketang/p/7523409.html

但在pycharm中不可行,pycharm中可以在上面的run菜单中中选中Run,然后弹出一个框,点击你想要运行的py文件后,则以python直接运行的方式来运行,而不是用unnitest去运行,运行后则在指定目录看到生成了一个html文件

适用于python 3的HTMLTestRunner以及为何在pycharm中执行后生成不了报告_第3张图片

       生成的HTMLTestRunner报告如下:

适用于python 3的HTMLTestRunner以及为何在pycharm中执行后生成不了报告_第4张图片

 

你可能感兴趣的:(测试工具)