运行少量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. Weekly Contest 139

    1071. Greatest Common Divisor of Strings For strings S and T, we say "T divides S" if and ...

  2. php判断请求类型(ajax|get|post|cli)

    php判断请求类型,可以通过 $_SERVER 相关的参数来实现, 这个很在对某些请求代码复用里面很常用.具体代码如下: /** *@todo: 判断是否为post */ if(!function_e ...

  3. 【Oauth2.0】Oauth2.0

    一.什么是Oauth2.0? 1.Oauth2.0即(Open Authorization ),Oauth2.0是一个用于第三方授权的开放标准,是Oauth1.0的升级版本,相比1.0版本易于使用: ...

  4. ajax异步登录

    以下是ajax代码示例: HTML <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" " ...

  5. [CTF]Brainfuck/Ook!编码

    [CTF]Brainfuck/Ook!编码 ---------------------  作者:adversity`  来源:CSDN  原文:https://blog.csdn.net/qq_408 ...

  6. Kafka Rebalance机制和选举策略总结

    自建博客地址:https://www.bytelife.net,欢迎访问! 本文为博客同步发表文章,为了更好的阅读体验,建议您移步至我的博客 本文作者: Jeffrey 本文链接: https://w ...

  7. 远程连接mysql出现"Can't connect to MySQL server 'Ip' ()"的解决办法

    1.大多是防火墙的问题(参考链接:https://blog.csdn.net/jiezhi2013/article/details/50603366) 2.上面方法不能解决,不造成影响情况下可关闭防火 ...

  8. Spring Boot & Cloud 轻量替代框架 Solon 1.3.33 发布

    Solon 是一个微型的Java开发框架.强调,克制 + 简洁 + 开放的原则:力求,更小.更快.更自由的体验.支持:RPC.REST API.MVC.Micro service.WebSocket. ...

  9. 精选Hive高频面试题11道,附答案详细解析(好文收藏)

    1. hive内部表和外部表的区别 未被external修饰的是内部表,被external修饰的为外部表. 区别: 内部表数据由Hive自身管理,外部表数据由HDFS管理: 内部表数据存储的位置是hi ...

  10. 通过CRM系统实现工作流程自动化

    灵活运用CRM系统所拥有的自动化功能模块,是公司在快速发展和降低成本的关键保障.不管您的公司规模的大小,您企业的工作流程都必须遵照相同的流程反复操作.这种反复的工作是一个效率黑洞,长久以往会导致人力资 ...