之前提到selenium加入unittest框架、可以引入HTMLTestRunner扩展、以此来生成测试报告

首先是分享下载的百度云地址

http://pan.baidu.com/s/1pKUItWR

文件名:HTMLTestRunner.py

下载成功后放入相应的python目录下如: “C:\Python27\Lib”

通过python自带的IDLE

如果没有报错、则说明添加成功

之后是利用之前写好的博客园登录脚本

 #!/usr/bin/env python
# -*- coding: utf-8 -*- import time
import unittest from selenium import webdriver class TestCnblogs(unittest.TestCase):
def setUp(self):
print "自动化测试用例执行开始"
self.driver = webdriver.Firefox()
self.driver.implicitly_wait(30)
# 智能等待30S
self.Errors = []
# 错误信息列表 def tearDown(self):
self.driver.quit()
self.assertEqual([], self.Errors)
# 检查错误信息列表 若不为空则返回显示
print "自动化测试用例执行结束" def test_cnblogs_login(self):
u"""博客园登录"""
driver = self.driver
driver.get("http://www.cnblogs.com/")
# 测试地址 后面可以添加响应地址
driver.find_element_by_css_selector("a[onclick = 'login();return false']").click()
driver.find_element_by_css_selector("input[type = 'text']").click()
driver.find_element_by_css_selector("input[type = 'text']").send_keys(u"堕落的伊丝莉")
# 这里用户名由于是中文前面要加 u
driver.find_element_by_css_selector("input[type = 'password']").click()
driver.find_element_by_css_selector("input[type = 'password']").send_keys("xxxxxx")
# 输入密码、密码当然按照实际内容添加
driver.find_element_by_css_selector("input[type = 'submit']").click()
time.sleep(2)
driver.close() if __name__ == "__main__":
unittest.main()

这里存在一个问题、如果把生成测试报告的代码内容写在     if __name__ == "__main__":

之下运行成功且不报错、但是生成的html文件内容为空

两种解决方式 一种是在cmd里执行脚本

另一种是写在另一文件加载上面的测试脚本代码

 #!/usr/bin/env python
# -*- coding: utf-8 -*- from test_case.cnblogs import TestCnblogs
import HTMLTestRunner
import unittest testreport = unittest.TestSuite() testreport.addTest(TestCnblogs("test_cnblogs_login"))
filename = "E:\\work\\python project\\selenium_python\\report.html"
fp = file(filename, "wb")
runner = HTMLTestRunner.HTMLTestRunner(
stream=fp,
title=u"博客园测试报告",
description=u"用例执行情况:"
)
runner.run(testreport)

这样直接在相应的python开发环境下运行即可成功生成测试报告

selenium学习笔记(HTMLTestRunner测试报告)的更多相关文章

  1. Selenium 学习笔记(一)

    selenium 学习整理 初学者,如果有不当得地方请指出,非常感谢. 准备事项: 1. Python 安装包 安装Python,并勾选添加环境变量. 安装完成后,打开dos窗口,输入python,看 ...

  2. Python+Selenium学习笔记17 - HTML测试报告

    运行少量case时 1 # coding = utf-8 2 3 from selenium import webdriver 4 import unittest 5 import time 6 fr ...

  3. selenium 学习笔记 ---新手学习记录(1) 问题总结

    说明:每次学习各种语言时,环境搭建访问国外网址最头疼了,现在只要是工具下载好放到自己网盘,可以随时用. 1.首先工具准备,selenium需要用到的 下载地址 访问密码 ff8f 2.我选择的语言时j ...

  4. selenium学习笔记(简单的元素定位)

    收拾一下心情开始新的一周工作 继续是selenium的学习.配置成功后 由于所有操作都是建立在页面元素基础上的.所以下来就是学习定位元素 首先是基础的定位.就使用博客园首页搜索框为例: 下面是代码: ...

  5. selenium学习笔记(selenium下载安装)

    博主自己捣鼓的接口框架先到这里 等工作上正式开始使用再后续完善需求 还是继续学习python.学编程就直接动手写 就想看看python+selenium的组合 什么都不多说.先下载安装 博主这里已经安 ...

  6. Selenium学习笔记之外部化相关测试数据---xml

    我们也可以用xml来定义一个信息更为丰富的UIMap.xml文件,比如,额外还添加控件所属的页,控件的类型,然后解析构建一个XMLParser类来读取相应的值. <?xml version=&q ...

  7. selenium 学习笔记 ---新手学习记录(9) 问题总结(java)

    1.百度搜索目标--实例 boolean flag; //点击次数 int shcs=3; int i=0; //窗口焦点控制 String detailWindowHandle = null; // ...

  8. selenium 学习笔记 ---新手学习记录(2) 问题总结

    今天研究了下ie.chrome.firefox浏览器执行脚本 1.首先firefox下执行时,我是安装在d盘了,所以要更改路径 //如果火狐浏览器没有默认安装在C盘,需要制定其路径 System.se ...

  9. python + selenium 学习笔记 -摘要

    一.浏览器操作相关 from selenium import webdriver driver = webdriver.Chrome() driver.maximize_window() # 窗口最大 ...

随机推荐

  1. struct 模块 把一个类型,如数字,转成固定长度的bytes

    该模块可以把一个类型,如数字,转成固定长度的bytes import struct headers=struct.pack('i',132333) print(headers,len(headers) ...

  2. Tomcat WEB站点部署

    上线的代码有两种方式, 第一种方式是直接将程序目录放在webapps目录下面 第二种方式是使用开发工具将程序打包成war包,然后上传到webapps目录下面.下面让我们见识一下这种方式 这个网站里面已 ...

  3. JS的深拷贝

    var obj = { name: "wuyongyu", age: 18 } 第一种方式: function deepClone(obj){ // 判断传入的数据类型 - 数组或 ...

  4. 初识ganglia

    本文地址:http://www.cnblogs.com/qiaoyihang/ 一.Ganglia是什么?Ganglia主要用来解决什么样的问题? ganglia是一个可扩展的分布式监控系统,用于监控 ...

  5. day11 函数和命名空间

    # def my_sum(*args):# sum_2=0# for i in args:# sum_2+=i# return sum_2### ret=my_sum(1,2,3,4)# print( ...

  6. js颜色选择器 制作分析

    给html元素设置事件监听, 触发事件 弹出颜色选择器 颜色选择器绘制 获取上次选择的颜色(当前颜色) 绘制渐变色板(canvas) (方法: 横轴渐变ff0000, ffff00, 00ff00, ...

  7. 数据结构:JAVA实现二叉查找树

    数据结构:JAVA实现二叉查找树 写在前面 二叉查找树(搜索树)是一种能将链表插入的灵活性与有序数组查找的高效性结合在一起的一种数据结构. 观察二叉查找树,我们发现任何一个节点大于左子节点且小于其右子 ...

  8. kubernetes1.9 手动安装

    一.创建TLS证书和秘钥: 1.安装 CFSSL: wget https://pkg.cfssl.org/R1.2/cfssl_linux-amd64 chmod +x cfssl_linux-amd ...

  9. MAC 终端颜色设置

    在bash中,可以通过更改PS1环境变量的值来设置提示行.通常的提示符颜色单调,用户可以通过在PS1中添加颜色代码序列来设置提示符中不同信息以不同颜色显示. 添加颜色相当容易:第一步是设计不带颜色的提 ...

  10. netty1---传统IO和NIO的区别

    传统IO: package OIO; import java.io.IOException; import java.io.InputStream; import java.net.ServerSoc ...