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正则匹配查询港澳通行证办理进度示例分享
Dec 27 Python
跟老齐学Python之玩转字符串(1)
Sep 14 Python
Django中的CACHE_BACKEND参数和站点级Cache设置
Jul 23 Python
Python简单操作sqlite3的方法示例
Mar 22 Python
python爬虫入门教程--HTML文本的解析库BeautifulSoup(四)
May 25 Python
django站点管理详解
Dec 12 Python
python 借助numpy保存数据为csv格式的实现方法
Jul 04 Python
Python实用技巧之利用元组代替字典并为元组元素命名
Jul 11 Python
python:目标检测模型预测准确度计算方式(基于IoU)
Jan 18 Python
python Matplotlib数据可视化(2):详解三大容器对象与常用设置
Sep 30 Python
python scrapy简单模拟登录的代码分析
Jul 21 Python
python数字转对应中文的方法总结
Aug 02 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
ezSQL PHP数据库操作类库
2010/05/16 PHP
PHP中删除变量时unset()和null的区别分析
2011/01/27 PHP
PHP中遍历stdclass object的实现代码
2011/06/09 PHP
php中global和$GLOBALS[]的分析之一
2012/02/02 PHP
分享一段PHP制作的中文拼音首字母工具类
2014/12/11 PHP
PHP中使用GD库绘制折线图 折线统计图的绘制方法
2015/11/09 PHP
关于javascript中的parseInt使用技巧
2009/09/03 Javascript
javascript 进阶篇2 CSS XML学习
2012/03/14 Javascript
解决jquery异步按一定的时间间隔刷新问题
2012/12/10 Javascript
整理Javascript基础语法学习笔记
2015/11/29 Javascript
JavaScript中的原型继承基础学习教程
2016/05/06 Javascript
在JavaScript中模拟类(class)及类的继承关系
2016/05/20 Javascript
jQuery实现表格行和列的动态添加与删除方法【测试可用】
2016/08/01 Javascript
学习Angular中作用域需要注意的坑
2016/08/17 Javascript
详解JavaScript中数组的reduce方法
2016/12/02 Javascript
JS表格组件神器bootstrap table使用指南详解
2017/04/12 Javascript
jQuery Jsonp跨域模拟搜索引擎
2017/06/17 jQuery
Vue axios 中提交表单数据(含上传文件)
2017/07/06 Javascript
webpack学习笔记之代码分割和按需加载的实例详解
2017/07/20 Javascript
Angular2使用vscode断点调试ts文件的方法
2017/12/13 Javascript
微信小程序版翻牌小游戏
2018/01/26 Javascript
详解Angular中通过$location获取地址栏的参数
2018/08/02 Javascript
微信小程序页面上下滚动效果
2020/11/18 Javascript
[05:31]干嘛呢兄弟!DOTA2 TI9语音轮盘部分出处
2019/05/14 DOTA
Python网站验证码识别
2016/01/25 Python
Python实现的破解字符串找茬游戏算法示例
2017/09/25 Python
Python常见工厂函数用法示例
2018/03/21 Python
Python 实现两个服务器之间文件的上传方法
2019/02/13 Python
使用python3构建文件传输的方法
2019/02/13 Python
AUC计算方法与Python实现代码
2020/02/28 Python
基于Keras 循环训练模型跑数据时内存泄漏的解决方式
2020/06/11 Python
就业自荐信
2013/12/04 职场文书
党的群众路线教育实践活动教师自我剖析材料
2014/10/09 职场文书
2015年司机年终工作总结
2015/05/14 职场文书
房地产置业顾问工作总结
2015/10/23 职场文书
我的暑假生活作文(五年级)范文
2019/08/07 职场文书