由于Python3已经不支持HTMLTestRunner了,

无论是PyCharm还是pip都无法安装成功,

所以只能去

http://tungwaiyip.info/software/HTMLTestRunner_0_8_2/HTMLTestRunner.py

手动下载:

在网页空白处点击鼠标右键,

选择另存为:

为了适配Python3,

作了部分修改,

修改过后的文件我会在后面的博客中贴出来,

把HTMLTestRunner.py文件放到Python3安装目录下的Lib文件夹里面;

还有一个地方需要注意的是,

Python3已经不支持file方法了,

应该用open!

新建TestCase.py:

import unittest
from selenium import webdriver
from selenium.webdriver.support.wait import WebDriverWait class SearchTestCase(unittest.TestCase): def setUp(self):
self.driver = webdriver.Firefox()
self.driver.maximize_window()
self.driver.get("https://www.baidu.com/")
self.driver.implicitly_wait(15) def test_searchChina(self):
"""百度搜索中国的测试用例"""
self.driver.find_element_by_xpath(".//*[@id='kw']").send_keys("中国")
self.driver.find_element_by_xpath(".//*[@id='su']").click() WebDriverWait(self.driver, 15).until(lambda x: x.find_element_by_xpath(".//*[@id='1']/h3/a"))
result = self.driver.find_element_by_xpath(".//*[@id='1']/h3/a").text self.assertEqual(result, "中国_百度百科") def tearDown(self):
self.driver.close()
self.driver.quit() if __name__ == '__main__':
unittest.main()

然后再新建HtmlReport.py:

import HTMLTestRunner
import unittest
from time import strftime, localtime, time from TestCase import SearchTestCase suite = unittest.TestSuite()
# 获取TestSuite的实例对象
suite.addTest(SearchTestCase("test_searchChina"))
# 把测试用例添加到测试容器中 now = strftime("%Y-%m-%M-%H_%M_%S", localtime(time()))
# 获取当前时间
filename = now + "test.html"
# 文件名 fp = open(filename, "wb")
# 以二进制的方式打开文件并写入结果
runner = HTMLTestRunner.HTMLTestRunner(
stream=fp,
verbosity=2,
title="测试报告的标题",
description="测试报告的详情") runner.run(suite) fp.close()

运行一把,

会在当前工程的目录下生成html文件,

打开之:

Selenium(Python)生成Html测试报告的更多相关文章

  1. selenium+Python(生成html测试报告)

    当自动化测试完成后,我们需要一份漂亮且通俗易懂的测试报告来展示自动化测试成果,仅仅一个简单的log文件是不够的 HTMLTestRunner是Python标准库unittest单元测试框架的一个扩展, ...

  2. 19.Selenium+Python生成测试报告

    1.代码如下所示: from selenium import webdriver import unittest import HTMLTestRunner class BaiduSearch(uni ...

  3. python+selenium +unittest生成HTML测试报告

    python+selenium+HTMLTestRunner+unittest生成HTML测试报告 首先要准备HTMLTestRunner文件,官网的HTMLTestRunner是python2语法写 ...

  4. Python基础(六) python生成xml测试报告

    思路: 1.使用xslt样式,这样可以很好的和xml结合,做出漂亮的报告 2.生成xml结构 xslt样式是个很有意思,也很强大的,现在用的很多,很方便就能做出一个漂亮的报告,可以百度一下,语法相当简 ...

  5. selenium之生成html测试报告--testng.xsl

    自制版制作步骤: 1.首先下载一个文件名为testng.xslt-1.1.zip testng.xslt-1.1我在印象笔记里面备份了一份 打开testng.xslt中lib文件夹,找到saxon-8 ...

  6. Selenium+Java的TestNG测试报告优化

    本博主很懒,但学习很勤快,一般能从博客园直接转载的东西,本博主绝不动手写,无奈Selenium+java生成的测试报告在百度上搜索..反正我是没有看到.后来才知道TestNG它可以自动生成测试报告,但 ...

  7. Python&Selenium&pytest借助allure生成自动化测试报告

    一.摘要 本篇博文将介绍Python和Selenium进行自动化测试时,如何借助allure生成自动化测试报告 二.环境配置 首先python环境中安装pytest和pytest_allure_ada ...

  8. Python&Selenium借助HTMLTestRunner生成自动化测试报告

    一.摘要 本篇博文介绍Python和Selenium进行自动化测试时,借助著名的HTMLTestRunner生成自动化测试报告 HTMLTestRunner.py百度很多,版本也很多,自行搜索下载放到 ...

  9. Python&Selenium借助html-testRunner生成自动化测试报告

    一.摘要 本博文将介绍Python和Selenium进行自动化测试时,借助html-testRunner 生成自动化测试报告 安装命令:pip install html-testRunner 二.测试 ...

  10. Python+selenium自动化生成测试报告

    批量执行完用例后,生成的测试报告是文本形式的,不够直观,为了更好的展示测试报告,最好是生成HTML格式的. unittest里面是不能生成html格式报告的,需要导入一个第三方的模块:HTMLTest ...

随机推荐

  1. es6之数据结构

    1.set的用法 用add方法添加元素,添加的数组不可重复. 可利用set类型添加元素不重复的功能,给数组完成去重的功能 size属性用于获取set元素的长度 { let list =new Set( ...

  2. 二十、在Intellij IDEA中使用Debug

    Debug用来追踪代码的运行流程,通常在程序运行过程中出现异常,启用Debug模式可以分析定位异常发生的位置,以及在运行过程中参数的变化.通常我们也可以启用Debug模式来跟踪代码的运行流程去学习三方 ...

  3. usb入门学习

    1.学习资源: usb org.http://www.beyondlogic.org/usbnutshell/usb3.shtml http://wenku.baidu.com/view/028231 ...

  4. 前端基础-CSS的属性相关设置

    一 字体属性 二 文本属性 三 背景属性 四 盒子模型 五 盒子模型各部分详解 一. 字体属性 1.font-weight:文字粗细(表格中*为重点) 取值 描述   normal 默认值,标准粗细 ...

  5. maven 环境变量 设置

    Maven安装与配置   一.需要准备的东西 1. JDK 2. Eclipse 3. Maven程序包 二.下载与安装 1. 前往https://maven.apache.org/download. ...

  6. Swift_继承

    Swift_继承 点击查看源码 func testInheritance() { //基类 class Base { var count = 0.0 var description: String { ...

  7. 利用ascii码生成26个英文字母

    <script> let a = ""; for (var i = 65; i < 91; i++) { a += String.fromCharCode(i); ...

  8. ON DUPLICATE KEY UPDATE 插入or更新

    mean:若数据表中存在以相同主键的记录,就更新该条记录.否则就插入一条新的记录. 单条:INSERT INTO tablename (`field1`,`field2`) VALUES(value1 ...

  9. 典型的 ajax 异步请求及错误处理

    $.ajax({ url: path + '/emergency/saveEmergency.do', async: false,//同步,会阻塞操作 type: 'POST',//PUT DELET ...

  10. TortoiseGit —— 配置密钥

    TortoiseGit 使用扩展名为ppk的密钥,而不是ssh-keygen生成的rsa密钥.使用命令ssh-keygen -C "邮箱地址" -t rsa产生的密钥在Tortoi ...