【Python+Selenium】HTML测试报告

本文介绍了如何在Python中使用HTMLTestRunner扩展生成HTML格式的测试报告。内容包括HTMLTestRunner的安装、Python2到Python3的适配、生成测试报告的步骤、提高报告可读性的方法,以及如何自动生成带时间戳的报告文件名,并最终将其集成到项目中进行集成测试报告的生成。
摘要由CSDN通过智能技术生成

HTMLTestRunner是Python标准库unittest单元测试框架的一个扩展,它生成易于使用的HTML测试报告。HTMLTestRunner是在BSD许可证下发布的。

下载地址如下:

http://tungwaiyip.info/software/HTMLTestRunner.html

这个扩展非常简单,只有一个HTMLTestRunner.py文件,选中后单击鼠标右键,在弹出的快捷菜单中选择目标另存为,将它保存到本地。安装方法也很简单,将其复制到Python安装目录下即可。

Windows:将下载的文件保存到...\Python35\Lib目录下。

在Python交互模式下引入HTMLTestRunner模块,如果系统没有报错,则说明添加成功。

import HTMLTestRunner

一、修改HTMLTestRunner

因为HTMLTestRunner.py是基于Python2开发的,为了使其支持Python3的环境,需要对其中的部分内容进行修改。下面通过编辑器打开HTMLTestRunner.py文件。

#第94行

import StringIO

修改为:

import io

#第539行

self.outputBuffer = StringIO.StringIO()

修改为:

self.outputBuffer = io.StringIO()

#第631行

print >>sys.stderr, '\nTime Elapsed: %s' % (self.stopTime-self.startTime)

修改为:

print(sys.stderr, '\nTime Elapsed: %s' % (self.stopTime-self.startTime))

#第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

二、生成HTML测试报告

下面继续以test_baidu.py文件为例生成HTMLTestRunner测试报告。

test_baidu.py

from selenium import webdriver
import unittest
from selenium.webdriver.support.wait import WebDriverWait

class SearchTestCase(unittest.TestCase):
    def setUp(self):
        self.driver=webdriver.Chrome()
        self.driver.maximize_window()
        self.driver.get("http://www.baidu.com")
        self.driver.implicitly_wait(15)

    def test_serchChina(self):
        """百度搜索中国的测试用例""
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值