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 optparse模块使用实例
Apr 09 Python
一步步解析Python斗牛游戏的概率
Feb 12 Python
使用Python来编写HTTP服务器的超级指南
Feb 18 Python
R vs. Python 数据分析中谁与争锋?
Oct 18 Python
Python切片索引用法示例
May 15 Python
pyqt5与matplotlib的完美结合实例
Jun 21 Python
python numpy存取文件的方式
Apr 01 Python
浅谈Python3识别判断图片主要颜色并和颜色库进行对比的方法
Oct 25 Python
pytorch对梯度进行可视化进行梯度检查教程
Feb 04 Python
如何使用Python抓取网页tag操作
Feb 14 Python
python GUI库图形界面开发之PyQt5不规则窗口实现与显示GIF动画的详细方法与实例
Mar 09 Python
python可视化之颜色映射详解
Sep 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
PHP 和 XML: 使用expat函数(三)
2006/10/09 PHP
PHP音乐采集(部分代码)
2007/02/14 PHP
深入file_get_contents函数抓取内容失败的原因分析
2013/06/25 PHP
总结一些PHP中好用但又容易忽略的小知识
2017/06/02 PHP
深入理解Javascript闭包 新手版
2010/12/28 Javascript
JS子父窗口互相操作取值赋值的方法介绍
2013/05/11 Javascript
js 显示base64编码的二进制流网页图片
2014/04/04 Javascript
JavaScript页面模板库handlebars的简单用法
2015/03/02 Javascript
js通过iframe加载外部网页的实现代码
2015/04/05 Javascript
谈谈Jquery中的children find 的区别有哪些
2015/10/19 Javascript
跟我学习JScript的Bug与内存管理
2015/11/18 Javascript
vue.js指令v-for使用及索引获取
2016/11/03 Javascript
JS+WCF实现进度条实时监测数据加载量的方法详解
2017/12/19 Javascript
JS实现移动端双指缩放和旋转方法
2019/12/13 Javascript
解决vue的router组件component在import时不能使用变量问题
2020/07/26 Javascript
Vue中inheritAttrs的使用实例详解
2020/12/31 Vue.js
[08:53]DOTA2每周TOP10 精彩击杀集锦vol.9
2014/06/26 DOTA
归纳整理Python中的控制流语句的知识点
2015/04/14 Python
TensorFlow平台下Python实现神经网络
2018/03/10 Python
django静态文件加载的方法
2018/05/20 Python
Python3多进程 multiprocessing 模块实例详解
2018/06/11 Python
Python单元测试unittest的具体使用示例
2018/12/17 Python
python数据持久存储 pickle模块的基本使用方法解析
2019/08/30 Python
python主线程与子线程的结束顺序实例解析
2019/12/17 Python
如何在 Django 模板中输出 "{{"
2020/01/24 Python
Python 执行矩阵与线性代数运算
2020/08/01 Python
荷兰本土平价百货:HEMA
2017/10/23 全球购物
美体小铺波兰官方网站:The Body Shop波兰
2019/09/03 全球购物
西部世纪.net笔试题面试题
2014/04/03 面试题
物业管理工作方案
2014/05/10 职场文书
学习十八大的心得体会
2014/09/12 职场文书
2014银行领导班子群众路线对照检查材料思想汇报
2014/09/17 职场文书
运动会搞笑广播稿
2014/10/14 职场文书
关于艺术节的开幕致辞
2016/03/04 职场文书
如何书写读后感?(附范文)
2019/07/26 职场文书
导游词之西安骊山
2019/12/03 职场文书