运行少量case时

 1 # coding = utf-8
2
3 from selenium import webdriver
4 import unittest
5 import time
6 from HTMLTestRunner import HTMLTestRunner
7
8 class MyTest(unittest.TestCase):
9 '''百度搜索测试'''
10
11 def setUp(self):
12 self.driver = webdriver.Firefox()
13 self.base_url = "http://www.baidu.com/"
14
15 def test_baidu(self):
16 '''搜索关键字:unittest'''
17 driver = self.driver
18 driver.get(self.base_url + '/')
19 driver.find_element_by_id("kw").clear()
20 driver.find_element_by_id("kw").send_keys("unittest")
21 driver.find_element_by_id("su").click()
22 time.sleep(2)
23 title = driver.title
24 self.assertEqual(title, "unittest_百度搜索")
25
26 def test_baidu2(self):
27 '''搜索关键字:HTMLTestRunner'''
28 driver = self.driver
29 driver.get(self.base_url + '/')
30 driver.find_element_by_id("kw").clear()
31 driver.find_element_by_id("kw").send_keys("HTMLTestRunner")
32 driver.find_element_by_id("su").click()
33 time.sleep(2)
34 title = driver.title
35 self.assertEqual(title, "unittest_百度搜索")
36
37 def tearDown(self):
38 self.driver.quit()
39
40 if __name__ == '__main__':
41 testunit = unittest.TestSuite()
42 testunit.addTest(MyTest("test_baidu"))
43 testunit.addTest(MyTest("test_baidu2"))
44
45 now = time.strftime("%Y-%m-%d %H_%M_%S")
46
47 filename = './'+ now +'result.html'
48
49 fp = open(filename, 'wb')
50 runner = HTMLTestRunner(stream=fp,
51 title='百度搜索测试报告',
52 description='用例执行情况: ')
53
54 runner.run(testunit)
55 fp.close()

结果报告

运行所有case时

 1 # coding = utf-8
2
3 import unittest, time
4 from HTMLTestRunner import HTMLTestRunner
5
6
7 test_dir = './'
8 discover = unittest.defaultTestLoader.discover(test_dir, pattern='test*.py')
9
10 if __name__ == "__main__":
11
12 now = time.strftime("%Y-%m-%d %H_%M_%S")
13 filename = './Report/'+ now +'result.html'
14 fp = open(filename, 'wb')
15 runner = HTMLTestRunner(stream=fp,
16 title='测试报告',
17 description='用例执行情况: ')
18
19 runner.run(discover)
20 fp.close()

测试结果报告为

报告中有下图框起来的字样是因为Python的注释doc string。 即在类或者方法的下放用三引号(""" """或''' ''')来添加doc string类型的注释。如第一个代码所示

 

Python+Selenium学习笔记17 - HTML测试报告的更多相关文章

  1. Python+Selenium学习笔记15 - 读取txt和csv文件

    读取txt的内容并用百度查找搜索 1 # coding = utf-8 2 3 from selenium import webdriver 4 import time 5 6 # 打开浏览器 7 d ...

  2. Python+Selenium学习--自动生成HTML测试报告

    前言 在脚本运行完成之后,除了在log.txt 文件看到运行日志外,我们更希望能生一张漂亮的测试报告来展示用例执行的结果.        HTMLTestRunner 是Python 标准库的unit ...

  3. selenium学习笔记(HTMLTestRunner测试报告)

    之前提到selenium加入unittest框架.可以引入HTMLTestRunner扩展.以此来生成测试报告 首先是分享下载的百度云地址 http://pan.baidu.com/s/1pKUItW ...

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

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

  5. Python+Selenium学习笔记12 - 窗口大小和滚动条

    涉及到的三个方法 set_window_size()  用于设置浏览器窗口的大小 e.gset_window_size(600,600) window.scrollTo() 用于设置浏览器窗口滚动条的 ...

  6. Python+Selenium学习笔记9 - 警告框处理

    如下图所示,这种窗口是不能通过前端工具对其进行定位的,这里可以通过switch_to_alert()方法去接受这个弹窗 1 # coding = utf-8 2 3 from selenium imp ...

  7. Python+Selenium学习笔记8 - 多表单&多窗口切换

    1.多表单切换 下图为待测页面:内嵌百度首页 切换到百度首页进行操作 1 # coding = utf-8 2 3 from selenium import webdriver 4 import os ...

  8. Python+Selenium学习笔记5 - python官网的tutorial - 交互模式下的操作

    这篇笔记主要是从Python官网的Tutorial上截取下来,再加上个人理解 1. 在交互模式下,下划线'_'还可以表示上一步的计算结果 2.引号转义问题. 从下图总结的规律是,字符串里的引号如果和引 ...

  9. Python+Selenium学习笔记1 - pip命令

    1.用pip命令安装模块 pip install 模块名 e.g. pip install qrcode 2.用pip卸载模块 pip uninstall 模块名 e.g. pip uninstall ...

随机推荐

  1. B - 真·签到题 FZU - 2214(背包)

    Given a set of n items, each with a weight w[i] and a value v[i], determine a way to choose the item ...

  2. Tomcat配置及网站创建教程(IDEA)

    Tomcat在本机的配置 解压 解压Tomcat压缩包后就算安装完成,解压完成生成文件夹 配置环境变量 1.配置JAVA_HOME 控制面板--系统--查看高级系统设置--环境变量--系统环境变量 新 ...

  3. 【cypress】6. cypress的默认文件结构介绍

    通过之前的一些介绍,已经大概其明白cypress是个啥,但是具体使用的细节点还有很多,需要一步步的去学习. 在安装好cypress之后,会生成一个默认项目,这个项目结构里的各个文件夹是干嘛使的呢? 一 ...

  4. 1.1.09- 序列赋值 is , is not运算符

    两个变量的交换算法 代码如下: a = 10000 b = 20000 temp = a a = b b = temp print(a) print(b) 序列赋值: a,b = b,aprint(a ...

  5. Vue method与computed的区别

    为了说明method与computed的区别,在此我想先来看看computed属性在vue官网中的说法: 模板内的表达式是非常便利的,但是它们实际上只用于简单的运算.在模板中放入太多的逻辑会让模板过重 ...

  6. thinkPHP5中的与原本的字母方法用什么东西替代了?

    过去的单字母函数已完全被替换掉,如下:S=>cache,C=>config,M/D=>model,U=>url,I=>input,E=>exception,L=&g ...

  7. 基于三层交换机的VRRP技术--MSTP、VRRP的综合运用

    MSTP (多生成树) 每个VLAN或者几个VLAN拥有一颗生成树,基于实例的生成树.instance 1.instance 2 每个实例拥有一颗生成树.MSTP可以实现多VLAN 的负载分担,可以实 ...

  8. Win64 驱动内核编程-7.内核里操作进程

    在内核里操作进程 在内核里操作进程,相信是很多对 WINDOWS 内核编程感兴趣的朋友第一个学习的知识点.但在这里,我要让大家失望了,在内核里操作进程没什么特别的,就标准方法而言,还是调用那几个和进程 ...

  9. Error starting userland proxy: /forwards/expose/port returned unexpected status: 500.

    欢迎关注微信公众号 Error starting userland proxy: /forwards/expose/port returned unexpected status: 500. dock ...

  10. python爬虫——汽车之家数据

    相信很多买车的朋友,首先会在网上查资料,对比车型价格等,首选就是"汽车之家",于是,今天我就给大家扒一扒汽车之家的数据: 一.汽车价格: 首先获取的数据是各款汽车名称.价格范围以及 ...