Python unittest discover批量执行代码实例


Posted in Python onSeptember 08, 2020

代码如下

import unittest
dir = "D:\\work_doc\\pycharm2\\python_Basics"  #自动化用例所存放的路径
suit = unittest.defaultTestLoader.discover(dir,pattern="XFS*.py",top_level_dir=None)  #匹配出需要执行的py文件
runner = unittest.TextTestRunner()  #TextTestRunner类实例化,目的是为了调用TextTestRunner下的run()方法
runner.run(suit)  #调用TextTestRunner下的run()方法执行用例
import unittest
def run_all_cases(file_path,file):
  discover = unittest.defaultTestLoader.discover(file_path,pattern=file)
  return discover
if __name__ == '__main__':
  runner = unittest.TextTestRunner()
  runner.run(run_all_cases(
    "D:\work_doc\pycharm2\python_selenium",
    "test*.py"))

解释

1.discover方法加载测试用例

  • discover 加载到的用例是一个 list 集合,需要重新写入到一个 list 对象 testcase 里,这样就可以用 unittest 里面的 TextTestRunner 这里类的 run 方法去执行。
  • TestLoader 该类根据各种标准加载测试用例,并将它们返回给测试套件。正常情况下,不需要创建这个类的实例。unittest 提供了可以共享的 defaultTestLoader 类,可以使用其子类和方法创建实例,discover() 就是其中之一。

2.discover方法里面有三个参数

  • -case_dir:这个是待执行用例的目录。
  • -pattern:这个是匹配脚本名称的规则,test*.py 意思是匹配test开头的所有脚本。
  • -top_level_dir:这个是顶层目录的名称,一般默认等于 None 就行了。

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持三水点靠木。

Python 相关文章推荐
python中assert用法实例分析
Apr 30 Python
Zabbix实现微信报警功能
Oct 09 Python
Python模拟登陆实现代码
Jun 14 Python
Python简单实现网页内容抓取功能示例
Jun 07 Python
pandas 对每一列数据进行标准化的方法
Jun 09 Python
python实现矩阵打印
Mar 02 Python
python实现超市商品销售管理系统
Nov 22 Python
pandas读取csv文件提示不存在的解决方法及原因分析
Apr 21 Python
Python super()函数使用及多重继承
May 06 Python
DjangoWeb使用Datatable进行后端分页的实现
May 18 Python
Python Selenium模块安装使用教程详解
Jul 09 Python
如何将anaconda安装配置的mmdetection环境离线拷贝到另一台电脑
Oct 15 Python
Python selenium实现断言3种方法解析
Sep 08 #Python
什么是Python包的循环导入
Sep 08 #Python
聊聊python中的循环遍历
Sep 07 #Python
详解python中的闭包
Sep 07 #Python
python logging模块的使用
Sep 07 #Python
了解一下python内建模块collections
Sep 07 #Python
Python pymsql模块的使用
Sep 07 #Python
You might like
一个用php3编写的简单计数器
2006/10/09 PHP
利用谷歌 Translate API制作自己的翻译脚本
2014/06/04 PHP
php简单统计中文个数的方法
2016/09/30 PHP
浅谈jQuery中对象遍历.eq().first().last().slice()方法
2014/11/26 Javascript
jQuery中siblings()方法用法实例
2015/01/08 Javascript
javascript事件冒泡简单示例
2016/06/20 Javascript
JS控制静态页面传递参数并获取参数应用
2016/08/10 Javascript
遍历js中对象的属性和值的实例
2016/11/21 Javascript
js实现4个方向滚动的球
2017/03/06 Javascript
webpack3+React 的配置全解
2017/08/21 Javascript
Vue侧滑菜单组件——DrawerLayout
2017/12/18 Javascript
Vue.js 的移动端组件库mint-ui实现无限滚动加载更多的方法
2017/12/23 Javascript
vue + webpack如何绕过QQ音乐接口对host的验证详解
2018/07/01 Javascript
webpack+vue-cli项目中引入外部非模块格式js的方法
2018/09/28 Javascript
jquery分页插件pagination使用教程
2018/10/23 jQuery
浅析vue中的MVVM实现原理
2019/03/04 Javascript
微信小程序整合使用富文本编辑器的方法详解
2019/04/25 Javascript
JavaScript中var的重要性实例分析
2019/07/09 Javascript
微信小程序图片右边加两行文字的代码
2020/04/23 Javascript
Javascript中Math.max和Math.max.apply的区别和用法详解
2020/08/24 Javascript
Vue组件生命周期运行原理解析
2020/11/25 Vue.js
跟老齐学Python之Python安装
2014/09/12 Python
Python+selenium 获取浏览器窗口坐标、句柄的方法
2018/10/14 Python
Python简单基础小程序的实例代码
2019/04/28 Python
修改 CentOS 6.x 上默认Python的方法
2019/09/06 Python
python实现代码统计程序
2019/09/19 Python
Pycharm打开已有项目配置python环境的方法
2020/07/03 Python
五十岁生日宴会答谢词
2014/01/15 职场文书
电脑专业个人求职信范文
2014/02/04 职场文书
幼儿园小班评语大全
2014/04/17 职场文书
网上祭先烈心得体会
2014/09/01 职场文书
寻找成龙观后感
2015/06/12 职场文书
校园新闻稿范文
2015/07/18 职场文书
掌握一个领域知识,高效学习必备方法
2019/08/08 职场文书
话题作文之诚信
2019/11/28 职场文书
python 利用 PIL 将数组值转成图片的实现
2021/04/12 Python