python selenium执行所有测试用例并生成报告的方法


Posted in Python onFebruary 13, 2019

直接上代码。

# -*- coding: utf-8 -*-
import time
import os
import os.path
import re
import unittest
import HTMLTestRunner
import shutil
shutil.copyfile("setting.ini","../setting.ini")
casepaths = []
def createsuite(casepath):
  testunit = unittest.TestSuite()
  #discover方法定义
  discover = unittest.defaultTestLoader.discover(
  casepath,
  pattern = 'case*.py',
  top_level_dir= casepath
  )
  for test_suite in discover:
    for test_case in test_suite:
      testunit.addTest(test_case)
  print testunit
  return testunit
for parent,dirnames,filenames in os.walk('.'):
 
  for filename in filenames:
    #print "parent is:" + parent
    #print "filename is:" + filename
    path=os.path.join(parent,filename)
    #正则判断是否为测试用例
    match = re.match('case', filename)
    if match:
      print u"获取测试用例目录:%s"%parent
      casepaths.append(parent)
      break
 
     
 
#定义报告存放目录,支持相对路径
now = time.strftime("%Y-%m-%M-%H-%M-%S",time.localtime(time.time()))
filename = now+'report.html'
fp = file(filename,'wb')
runner = HTMLTestRunner.HTMLTestRunner(
stream = fp,
title = u'自动化测试报告',
description = u'用例执行情况'
)
 
for casepath in casepaths:
  print u"正在执行 %s目录下的测试用例"%casepath
  alltestnames = createsuite(casepath)
  runner.run(alltestnames)
  print u"执行 %s目录下的测试用例完成"%casepath
print u"完成所有测试用例执行任务"

以上这篇python selenium执行所有测试用例并生成报告的方法就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持三水点靠木。

Python 相关文章推荐
Python实现的数据结构与算法之快速排序详解
Apr 22 Python
Python的Django框架中消息通知的计数器实现教程
Jun 13 Python
Python中取整的几种方法小结
Jan 06 Python
《Python学习手册》学习总结
Jan 17 Python
Python中Numpy包的安装与使用方法简明教程
Jul 03 Python
django_orm查询性能优化方法
Aug 20 Python
python将.ppm格式图片转换成.jpg格式文件的方法
Oct 27 Python
python程序控制NAO机器人行走
Apr 29 Python
Python Subprocess模块原理及实例
Aug 26 Python
Anaconda+Pycharm环境下的PyTorch配置方法
Mar 13 Python
Python实现Word表格转成Excel表格的示例代码
Apr 16 Python
python opencv pytesseract 验证码识别的实现
Aug 28 Python
对python_discover方法遍历所有执行的用例详解
Feb 13 #Python
django2.0扩展用户字段示例
Feb 13 #Python
Python查找最长不包含重复字符的子字符串算法示例
Feb 13 #Python
Python查找数组中数值和下标相等的元素示例【二分查找】
Feb 13 #Python
使用Python3+PyQT5+Pyserial 实现简单的串口工具方法
Feb 13 #Python
PyQt5内嵌浏览器注入JavaScript脚本实现自动化操作的代码实例
Feb 13 #Python
Python实现Event回调机制的方法
Feb 13 #Python
You might like
BBS(php & mysql)完整版(二)
2006/10/09 PHP
yii2.0实现验证用户名与邮箱功能
2015/12/22 PHP
Yii2实现让关联字段支持搜索功能的方法
2016/08/10 PHP
Laravel框架在本地虚拟机快速安装的方法详解
2018/06/11 PHP
PHP中创建和编辑Excel表格的方法
2018/09/13 PHP
获取任意Html元素与body之间的偏移距离 offsetTop、offsetLeft (For:IE5+ FF1 )[
2006/12/22 Javascript
jquery+ajax每秒向后台发送请求数据然后返回页面的代码
2011/01/17 Javascript
Dom操作之兼容技巧分享
2011/09/20 Javascript
如何获取JQUERY AJAX返回的JSON结果集实现代码
2012/12/10 Javascript
纯js实现瀑布流展现照片(自动适应窗口大小)
2013/04/08 Javascript
nodejs读取memcache示例分享
2014/01/02 NodeJs
下拉框select的绑定示例
2014/09/04 Javascript
js实现tab切换效果实例
2015/09/16 Javascript
jQuery插件Easyui设置datagrid的pageNumber导致两次请求问题的解决方法
2016/08/06 Javascript
angular ng-click防止重复提交实例
2017/06/16 Javascript
Angularjs 事件指令详细整理
2017/07/27 Javascript
详解react、redux、react-redux之间的关系
2018/04/11 Javascript
node使用request请求的方法
2019/12/20 Javascript
json_decode 索引为数字时自动排序问题解决方法
2020/03/28 Javascript
[56:24]DOTA2上海特级锦标赛主赛事日 - 3 胜者组第二轮#1Liquid VS MVP.Phx第二局
2016/03/04 DOTA
[43:18]NB vs Infamous 2019国际邀请赛淘汰赛 败者组 BO3 第一场 8.22
2019/09/05 DOTA
python基础教程之Filter使用方法
2017/01/17 Python
python3实现ftp服务功能(客户端)
2017/03/24 Python
Python中import机制详解
2017/11/14 Python
Python 多线程不加锁分块读取文件的方法
2018/12/11 Python
深入理解Django-Signals信号量
2019/02/19 Python
Python3.5局部变量与全局变量作用域实例分析
2019/04/30 Python
python-sys.stdout作为默认函数参数的实现
2020/02/21 Python
Python中的特殊方法以及应用详解
2020/09/20 Python
Bluebella美国官网:英国性感内衣品牌
2018/10/04 全球购物
国际贸易毕业生求职信范文
2014/02/21 职场文书
教师节标语大全
2014/10/07 职场文书
部队个人年终总结
2015/03/02 职场文书
2015年宣传部工作总结范文
2015/03/31 职场文书
如何用python反转图片,视频
2021/04/24 Python
Python学习之时间包使用教程详解
2022/03/21 Python