这里我使用的是python selenium webdriver环境,浏览器驱动安装见selenium安装

1、下载HTMLTestRunner.py:http://tungwaiyip.info/software/HTMLTestRunner.html

  python3环境需要对该文件的六个地方进行修改,修改后放置python\Lib目录下

from selenium import webdriver
import HTMLTestRunner,unittest,time,os class BaiduTest(unittest.TestCase):
def setUp(self): #测试准备工作
self.driver = webdriver.Chrome() #加载驱动
self.driver.implicitly_wait(30) #隐式等待
self.base_url = "http://www.baidu.com" #url def test_baidu(self): #测试用例
driver = self.driver
print("========【case_0001】 百度搜索=============")
driver.get(self.base_url + "/") #get发送url
driver.find_element_by_id("kw").clear() #清空
driver.find_element_by_id("kw").send_keys("shuzf") #搜索shuzf
driver.find_element_by_id("su").click() #点击
time.sleep(5)#休息5s
self.assertEqual("shuzf_百度搜索", driver.title) # 断言判断是否相等
now = time.strftime("%Y-%m-%d-%H_%M_%S", time.localtime(time.time()))
if not os.path.exists('result/image/'): os.makedirs('result/image/') #判断当前路径是否存在,没有则创建文件夹
pic_path = 'result/image/' + now + '.png'
driver.save_screenshot(pic_path) #生成图片 def tearDown(self): #释放资源
self.driver.quit() #退出 if __name__ == "__main__":
testunit = unittest.TestSuite() #构造测试套件
testunit.addTest(BaiduTest("test_baidu")) #添加测试用例 #HtmlFile = "c:/"+now+"run.html"
now = time.strftime("%Y-%m-%d-%H_%M_%S", time.localtime(time.time()))
if not os.path.exists('result/'): os.makedirs('result/') #判断当前路径是否存在,没有则创建文件夹
HtmlFile = "result/" + now + ".html"
fp = open(HtmlFile, "wb") #生成报告
runner = HTMLTestRunner.HTMLTestRunner(stream=fp, title="百度测试报告", description="用例测试情况")
runner.run(testunit) #执行套件
fp.close() #关闭 #注意点1、浏览器驱动的安装 2,文件夹的生成

2,使用命令行执行文件,而不是pycharm

  >python demo.py

python使用HTMLTestRunner.py生成测试报告的更多相关文章

  1. python使用 HTMLTestRunner.py生成测试报告

    HTMLTestRunner.py python 2版本 下载地址:http://tungwaiyip.info/software/HTMLTestRunner.html 使用时,先建立一个”PyDe ...

  2. Python+Selenium----使用HTMLTestRunner.py生成自动化测试报告2(使用PyCharm )

    1.说明 在我前一篇文件(Python+Selenium----使用HTMLTestRunner.py生成自动化测试报告1(使用IDLE ))中简单的写明了,如何生产测试报告,但是使用IDLE很麻烦, ...

  3. Python+Selenium----使用HTMLTestRunner.py生成自动化测试报告1(使用IDLE)

    1.说明 自动化测试报告是一个很重要的测试数据,网上看了一下,使用HTMLTestRunner.py生成自动化测试报告使用的比较多,但是呢,小白刚刚入手,不太懂,看了很多博客,终于生成了一个测试报告, ...

  4. 解决python3.7无法使用HTMLTestRunner.py生成html测试报告的问题2019.04

    **一:首先下载这个HTMLTestRunner.py文件:链接: https://pan.baidu.com/s/1jQFsMYLM3ysY6shgRF40Kw 提取码: evq2二:把该文件放在p ...

  5. Python 中 使用 HTMLTestRunner 模块生成测试报告

     使用 HTMLTestRunner 模块可以生成测试报告,但是系统自带的报告不详细,不好看,所以找了一份详细的报告 HTMLTestRunner 模板,直接导入就能使用 两种方法生成HTML报告,都 ...

  6. python之单元测试_生成测试报告

    (1)HTMLTestRunner.py的下载路径:https://pan.baidu.com/s/1Yk2E8d8bIo5_rmpussOE9Q 提取码:0jae (2)HTMLTestRunner ...

  7. mac 电脑下添加 HTMLtestrunner.py 生成 报表

    HTMLTestRunner是Python标准库unittest模块的一个扩展.它生成易于使用的HTML测试报告. 1.下载HTMLTestRunner.py模块地址 http://tungwaiyi ...

  8. 记Selenium HTMLTestRunner 无法生成测试报告的总结

      使用Python ,HTMLTestRunner 生成测试报告时,遇到很奇怪的问题,明明运行的结果,没有任何报错,就是不生成测试报告,纠结好久.google+baidu搜索结果也不满意,最后终于解 ...

  9. Python3+HTMLTestRunner+SMTP生成测试报告后发送邮件

    在前一篇https://www.cnblogs.com/zhengyihan1216/p/11549820.html 中记录了如何生成html格式的报告, 这篇记录下怎么将测试报告通过邮件发出 1.对 ...

随机推荐

  1. codecs模块, decode、encode

    使用codecs模块,在Python中完成字符编码   字符的编码是按照某种规则在单字节字符和多字节字符之间进行转换的某种方法.从单字节到多字节叫做decoding,从多字节到单字节叫做encodin ...

  2. CDN-template

    ylbtech-CDN: 1.返回顶部   2.返回顶部   3.返回顶部   4.返回顶部   5.返回顶部     6.返回顶部   7.返回顶部   8.返回顶部   9.返回顶部   10.返 ...

  3. SVN 忽略添加文件和文件夹

    你添加的文件和文件夹是没有加入版本控制的,是你新添加的,接下来的设置才有用 忽略这个文件的方式有两种 第一种方式 添加svn:ignore    右键文件-->TortoiseSvn--> ...

  4. 设计模式 - 建造者模式 Builder Pattern

    简介 场景 在创建复杂对象时,用户无须关心该对象所包含的属性以及它们的组装方式,只需要指定复杂对象的类型和内容就可以构建它们. 模式定义 建造者模式:将一个复杂对象的构建与表示分离,使得同样的构建过程 ...

  5. 常见的网络设备:集线器 hub、网桥、交换机 switch、路由器 router、网关 gateway

    Repeater 中继器 Hub 集线器 bridge 网桥 switch 交换机 router 路由器 gateway 网关 网卡 参考资料: do-you-know-the-differences ...

  6. Schema 与数据类型优化

    这是<高性能 MySQL(第三版)>第四章<Schema 与数据类型优化>的读书笔记. 1. 选择优化的数据类型 数据类型的选择原则: 越小越好:选择满足需求的最小类型.注意, ...

  7. mybatis批量插入、更新和删除

    https://blog.csdn.net/m0_37981235/article/details/79131493 https://www.jb51.net/article/132823.htm

  8. 网络流强化-HDU2732

    第一次遇到加了“多余”的边会导致WA的——在我看来是很多余,见代码191行 之后会思考为什么,想出来再更. 问题弄明白了,如果你在连接边连了一条到没有柱子的点的边,这个没有柱子的点是不可能连到终点的, ...

  9. No-sql之redis常用命令

    转自:http://blog.csdn.net/nicewuranran/article/details/51793760 No-SQL之Redis 介绍 Redis是一种基于内存存储的key-val ...

  10. instanceof 和isinstance的区别

    class A {} class B extends A {} class C extends A {} public class Test { public static void main(Str ...