python自动化报告的输出用例详解

yipeiwu_com6年前Python基础

1、设计简单的用例

2、设计用例

   以TestBaiduLinks.py命名

# coding:utf-8
from selenium import webdriver
import unittest
class BaiduLinks(unittest.TestCase):
 def setUp(self):
  base_url = 'https://www.baidu.com'
  self.driver = webdriver.Chrome()
  self.driver.implicitly_wait(10)
  self.driver.get(base_url)
 def tearDown(self):
  self.driver.close()
  self.driver.quit()
 def test_baidu_news(self):
  u"""百度新闻"""
  driver = self.driver
  driver.find_element_by_link_text('新闻').click()
  self.assertIn(driver.title, u'v百度新闻——全球最大的中文新闻平台')
 def test_baidu_hao123(self):
  u"""hao123"""
  driver = self.driver
  driver.find_element_by_link_text('hao123').click()
  self.assertEqual(driver.title, u'hao123_上网从这里开始')
 def test_baidu_tieba(self):
  u"""百度贴吧"""
  driver = self.driver
  driver.find_element_by_link_text('贴吧').click()
  # 错误的断言
  self.assertTrue(driver.find_element_by_link_text('全吧搜索+1'))
if __name__ == '__main__':
 unittest.main()
 print('百度链接跳转成功')

3、写执行用例脚本

# /usr/bin/env python3
# coding:utf-8
"""
Created on 2018-05-30
Project: learning
@Author:wuya
"""
import os, time, unittest
import HTMLTestRunner
report_path = os.getcwd() # 设置保存报告的路径,这儿设置的是与执行文件在同一个目录下
now = time.strftime("%Y-%m-%d %H:%M", time.localtime(time.time())) # 获取当前时间
title = u"百度头链接测试" # 标题
report_abspath = os.path.join(report_path, title + now + ".html") # 设置报告存放和命名
# 导入用例
def all_case():
 case_path = os.getcwd() # 用例路径,这儿的用例和执行文件在同一目录下
 discover = unittest.defaultTestLoader.discover(case_path,             pattern="Test*.py") # 添加用例,在case_path的路径下,所有以Test开头的文件都当做用例文件执行
 print(discover)
 return discover
if __name__ == "__main__":
 fp = open(report_abspath, "wb") # 保存报告文件
 runner = HTMLTestRunner.HTMLTestRunner(stream=fp,           title=title + ':',)
 runner.run(all_case()) # 执行用例
 fp.close()

4、执行结果

  结果文档下载

  对于执行不通过的用例可以点击错误二字查看详情

总结

以上所述是小编给大家介绍的python自动化报告的输出用例详解,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对【听图阁-专注于Python设计】网站的支持!

相关文章

Python正则表达式分组概念与用法详解

本文实例讲述了Python正则表达式分组概念与用法。分享给大家供大家参考,具体如下: 正则表达式分组 分组就是用一对圆括号“()”括起来的正则表达式,匹配出的内容就表示一个分组。从正则...

Python利用BeautifulSoup解析Html的方法示例

介绍 Beautiful Soup提供一些简单的、python式的函数用来处理导航、搜索、修改分析树等功能。它是一个工具箱,通过解析文档为用户提供需要抓取的数据,因为简单,所以不需要多少...

获取Django项目的全部url方法详解

在为一个项目添加权限时,遇到一个问题,就是为项目所有的url设置权限,但是一个一个手动输入太麻烦了,所以考虑用代码获取到一个项目所有的url 首先,考虑到项目最外层的urlpartte...

详解Python3中的迭代器和生成器及其区别

详解Python3中的迭代器和生成器及其区别

介绍 本篇将介绍Python3中的迭代器与生成器,描述可迭代与迭代器关系,并实现自定义类的迭代器模式。 迭代的概念 上一次输出的结果为下一次输入的初始值,重复的过程称为迭代,每次重复即一...

使用python turtle画高达

使用python turtle画高达

我就废话不多说了,直接上代码吧! import turtle t=turtle.Turtle() turtle.Turtle().screen.delay(0) tleft=turt...