输出测试报告

HTMLTestRunner介绍

下载地址:HTMLTestRunner - tungwaiyip's softwarehttp://tungwaiyip.info/software/HTMLTestRunner.html

HTMLTestRunner是一个第三方的类库,用来执行测试用例并生成HTML格式的测试报告,网上有多种不同的实现版本,用法都类似,只是生成的HTML报告样式有差别

注意:下载的文件要与Python的版木兼容(有些版本只支持Python2.x)

可以使用两种模板文件,HTMLTestRunner.py和HTMLTestRunner_PY3.py

HTMLTestRunner.py :样式比较简单,不需要依赖外部JS和CSS文件
HTMLTestRunner_PY3.py :样式比较美观,需要依赖外部JS和CSS文件

测试报告:

一、自带的测试报告:

只有单独运行TestCase得到代码,才会生成测试报告

二、生成第三方的测试报告:

  1. 获取第三方的测试运行模块,将其放在代码的目录中
  2. 导包unittest
  3. 使用套件对象,加载对象去添加用例对象
  4. 实例化,第三方的运行对象并运行套件对象

注意:由于HTMLTestRunner.py是python2,现在使用是python3,会出现“'str' object has no attribute ‘decode'”一系列报错,此时需修改  HTMLTestRunner.py。

HTMLTestRunner()的方法参数:

def __init__(self, stream=sys.stdout, verbosity=1, title=None, description=None):

stream=sys.stdout,必填,测试报告的文件对象(open ),注意点,要使用wb打开

 verbosity=1,可选,报告的详细程度,默认1简略,2详细

titLe=None,可选,测试报告的标题

description=None 可选,描述信息,Python的版本,pycharm版本

步骤如下:

第94行,将import StringlO修改成import io
第539行,将self.outputBuffer = StringlO.StringIO0)修改成self.outputBuffer = io.StringlO(第642行,将if not rmap.has_key(cls):修改成if not cls in rmap:
第766行,将uo = o.decode('latin-1')修改成uo = e
第772行,将ue = e.decode("latin-1")修改成ue = e
第631行,将print >> 5y.stder 1nTinme Elapsed.%is % (selistopTime-seltstartTime)修改成printisys.stder,1nTime Elapsed:%os % (selisopTime-selfistartTime)

修改完执行代码,例子:

import unittest
from HTMLTestRunner import HTMLTestRunner

suite = unittest.defaultTestLoader.discover('./case', 'test_断言.py')

# HTMLTestRunner()
file = 'report1.html'
with open(file, 'wb') as f:
    runner = HTMLTestRunner(f, 2, '测试报告')
    runner.run(suite)

结果:

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值