unittest测试驱动之HTMLTestRunner.py
对于自动化来说,测试报告是必须的,在敏捷化的团队中,团队中的成员需要自动化这边提供自动化的测试报告,来判断系统的整体质量以及下一步的测试策略。单元测试库生成测试输出到控制台的窗口上,但是这样的结果看起来比较费力,很显然,控制台日志的输出的信息并不是个好的注意,那么好的注意应该是生成html页面的测试报告,这样的报告看起来更加清晰,庆幸的是unittest的单元测试库扩展的HTMLTestRunner.py,可以生成html的自动化报告。
一、HTMLTestRunner.py
HTMLTestRunner是Python标准库中单元测试模块的扩展,它生成易于使用的html测试报告, HTMLTestRunner.py文件下载地址为:http://tungwaiyip.info/software/HTMLTestRunner.html,下载HTMLTestRunner.py文件后,把HTMLTestRunner文件放到C:\Python27\Lib的目录下即可。 运行cmd,输入python,导入import HTMLTestRunner,无任何的错误提示信息,就表示成功,见截图:
HTMLTestRunner.py实现html的测试报告,具体见如下的测试实例代码:
#coding:utf-8
fromselenium import webdriver
fromtime import sleep,time,ctime
import unittest
fromPage import *
import threading
import HTMLTestRunner
class DemoPage(unittest.TestCase,BasePage.Page):
def setUp(self):
self.driver=webdriver.Firefox()
self.driver.implicitly_wait(30)
self.driver.maximize_window()
self.driver.get('http://www.baidu.com')
def testTitle(self,value='testData'):
self.assertTrue(self.driver.title in self.getXmlData(value) )
def testUrl(self):
print self.driver.current_url
def tearDown(self):
self.driver.close()
self.driver.quit()
if__name__=='__main__':
suite=unittest.makeSuite(DemoPage)
#定义自动化报告目录
filename='D:\\git\\PyCharm\\SeleniumHq\\Test-report\\Report.html'
fp=file(filename,'wb')
runner=HTMLTestRunner.HTMLTestRunner(
stream=fp,
title=u'自动化测试报告',
description=u'自动化测试报告'
)
runner.run(suite)
执行成功后,自动化的测试报告在D:\\git\\PyCharm\\SeleniumHq\\Test-report目录下的Report.html,打开Report.html的文件,就可以看到如下的自动化测试报告的截图了:
unittest测试驱动之HTMLTestRunner.py的更多相关文章
- (引用) unittest测试驱动之执行测试(三)
转载:http://www.wtoutiao.com/p/ydeoyY.html 在unittest的模块中,提供了TestRunner类来进行运行测试用例,在实际的应用中,经常使用的是TextTes ...
- 自动化测试===unittest配套的HTMLTestRunner.py生成html报告源码
更改版: 全部复制,命名为 HTMLTestRunner.py 文件 #使用方法参见之前的文档:自动化测试===unittest和requests接口测试案例,测试快递查询api(二) " ...
- python使用HTMLTestRunner.py生成测试报告
这里我使用的是python selenium webdriver环境,浏览器驱动安装见selenium 1.下载HTMLTestRunner.py:http://tungwaiyip.info/sof ...
- python3中用HTMLTestRunner.py报ImportError: No module named 'StringIO'如何解决
python3中用HTMLTestRunner.py报ImportError: No module named 'StringIO'的解决方法: 1.原因是官网的是python2语法写的,看官手动把官 ...
- Python 下的unittest测试框架
unittest测试框架,直接上图吧: data:数据:主要格式为CSV:读取方式:csv.reade: public:封装的模块:通用的模块单独封装,所需参数设置为变量: testcase:测试用例 ...
- 使用 HTMLTestRunner.py
HTMLTestRunner.py python 2版本 下载地址:http://tungwaiyip.info/software/HTMLTestRunner.html 教程:http://www. ...
- python+selenium自动化软件测试(第10章):测试驱动TDD
测试驱动开发模式,要求开发在写业务代码的时候,先写出测试代码,同时单元测试例子决定了如何来写产品的代码,并且不断的成功的执行编写的所有的单元测试例子,不断的完善单元测试例子进而完善产品代码, 这样随着 ...
- Selenium之unittest测试框架详谈及实操
申明:本文是基于python3.x及selenium3.x. unittest,也可以称为PyUnit,可以用来创建全面的测试套件,可以用于单元自动化测试(模块).功能自动化测试(UI)等等. 官方文 ...
- python3中用HTMLTestRunner.py报ImportError: No module named 'StringIO'解决办法
.原因是官网的是python2语法写的,看官手动把官网的HTMLTestRunner.py改成python3的语法: 参考:http://bbs.chinaunix.net/thread-415474 ...
随机推荐
- Hibernate一对一关系映射
Hibernate提供了两种一对一映射关联关系的方式: 1)按照外键映射 2)按照主键映射 下面以员工账号表和员工档案表(员工账号和档案表之间是一对一的关系)为例,介绍这两种映射关系,并使用这两种 映 ...
- js模拟高级语言的重载
js以递归的方式模拟高级语言的重载,我以添加元素节点为例子: //现有的子元素之前插入一个新的子元素 var before = function(elem,newElement,targetEleme ...
- nfs服务部署记录
一.概念介绍NFS 是Network File System的缩写,即网络文件系统.一种使用于分散式文件系统的协定,由Sun公司开发,于1984年向外公布.功能是通过网络让不同的机器.不同的操作系统能 ...
- Centos5.8 安装 MySQL5.6.19
查看已经安装的mysql: sudo yum list installed |grep mysql 删除 sudo yum remove mysql 安装 sudo rpm -ivh MySQL-se ...
- MySQL Index详解
FROM:http://blog.csdn.net/tianmo2010/article/details/7930482 ①MySQL Index 一.SHOW INDEX会返回以下字段 1.Tabl ...
- IO调度器(二) IO的中断返回
IO的中断返回也是相当让人激动的一件事情: 28470 1) | handle_irq() { 28471 1) 0.237 us | ...
- h1/title,b/strong,i/em 的区别
< strong > 表示html页面上的强调(emphasized text), < em > 表示句子中的强调(即强调语义) 1.b和strong的区别 盲人朋友使用阅读设 ...
- 2014-2015-2 《Java程序设计》课程学生博客列表
20135101 曹钰晶 20135103 王海宁 20135104 刘 帅 20135105 王雪铖 20135109 高艺桐 20135111 李光豫 20135114 王朝宪 20135116 ...
- 安装Ubuntu时的硬盘分区方案
如果你准备在硬盘里只安装Ubuntu一个操作系统的话,建议你采用一个“/”.一个“swap”和一个“/home”的三分区方案:/ :10GB-15GB.swap:物理内存小于或等于 512MB,建议分 ...
- lecture2-NN结构的主要类型的概述和感知机
Hinton课程第二课 一.NN结构的主要类型的概述 这里的结构就是连接在一起的神经元.目前来说,在实际应用中最常见的NN就是前向NN,他是将数据传递给输入单元,通过隐藏层最后到输出层的单元:一个更有 ...