对python_discover方法遍历所有执行的用例详解


Posted in Python onFebruary 13, 2019

当我们写了一个单个py的测试文件时直接运行就ok了,但当我们有很多很多个这样的py时,难道要一个一个的点击来运行吗,当然不是。我们可以通过discover方法来找到所有的用例。

下面直接举例说明discover用法:

一、 准备工作

目录结构:

对python_discover方法遍历所有执行的用例详解

DiscoverCase.py 文件代码:

import unittest
import os

def discover_case(case_dir):
 # 待执行用例的目录
 testcase = unittest.TestSuite()
 discover = unittest.defaultTestLoader.discover(case_dir,pattern="*.py",top_level_dir=None)
 # discover方法筛选出来的用例,循环添加到测试套件中
 print(discover)
 for test_suite in discover:
  for test_case in test_suite:
   print(test_case)
   # 添加用例到testcase
   #testcase.addTests(test_case)
   testcase.addTests(test_case)

 return(testcase)
path = os.path.join(os.getcwd(), "测试用例")
case = discover_case(case_dir=path)
print(case)

Test1代码(test2~4代码基本相同):

对python_discover方法遍历所有执行的用例详解

注意:每个testcase里面的执行用例(即以test开头的函数)必现大于或等于两个,不然会报错。

二、写好这些后我们就直接跑程序看结果

运行后用例的文件名、类名、函数名都会遍历出来

对python_discover方法遍历所有执行的用例详解

是不是很简单啊。

注意:如果用例名称全为中文是不可以加载的到的,必须以字母开始,比如“i登录.py”

这样是可以被加载到的,如果直接写”登录.py”这样是不能被加载到的。

以上这篇对python_discover方法遍历所有执行的用例详解就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持三水点靠木。

Python 相关文章推荐
python使用正则搜索字符串或文件中的浮点数代码实例
Jul 11 Python
Python之读取TXT文件的方法小结
Apr 27 Python
Python subprocess库的使用详解
Oct 26 Python
Python unittest 简单实现参数化的方法
Nov 30 Python
解决Python一行输出不显示的问题
Dec 03 Python
pytorch索引查找 index_select的例子
Aug 18 Python
python 利用已有Ner模型进行数据清洗合并代码
Dec 24 Python
Python while循环使用else语句代码实例
Feb 07 Python
Python如何把字典写入到CSV文件的方法示例
Aug 23 Python
Python: glob匹配文件的操作
Dec 11 Python
给numpy.array增加维度的超简单方法
Jun 02 Python
Python使用海龟绘图实现贪吃蛇游戏
Jun 18 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
Python socket实现多对多全双工通信的方法
Feb 13 #Python
You might like
对于ThinkPHP框架早期版本的一个SQL注入漏洞详细分析
2014/07/04 PHP
用 Composer构建自己的 PHP 框架之设计 MVC
2014/10/30 PHP
PHP session文件独占锁引起阻塞问题解决方法
2015/05/12 PHP
ThinkPHP实现更新数据实例详解(demo)
2016/06/29 PHP
thinkphp5实现微信扫码支付
2019/12/23 PHP
javascript中IE浏览器不支持NEW DATE()带参数的解决方法
2012/03/01 Javascript
css与javascript跨浏览器兼容性总结
2014/09/15 Javascript
推荐10个2014年最佳的jQuery视频插件
2014/11/12 Javascript
解决ueditor jquery javascript 取值问题
2014/12/30 Javascript
理解javascript中的MVC模式
2016/01/28 Javascript
jQuery动态生成Bootstrap表格
2016/11/01 Javascript
你可能不知道的JSON.stringify()详解
2017/08/17 Javascript
简单谈谈关于Angular Cli打包的事
2017/09/05 Javascript
express默认日志组件morgan的方法
2018/04/05 Javascript
如何在Vue中使用CleaveJS格式化你的输入内容
2018/12/14 Javascript
JavaScript计算出两个数的差值
2020/03/19 Javascript
Vue执行方法,方法获取data值,设置data值,方法传值操作
2020/08/05 Javascript
[09:33]2015国际邀请赛第四日TOP10
2015/08/08 DOTA
一些Python中的二维数组的操作方法
2015/05/02 Python
python实现计算倒数的方法
2015/07/11 Python
Python实现数据库并行读取和写入实例
2017/06/09 Python
Pandas 重塑(stack)和轴向旋转(pivot)的实现
2019/07/22 Python
python 数据分析实现长宽格式的转换
2020/05/18 Python
如何让python的运行速度得到提升
2020/07/08 Python
利用python 下载bilibili视频
2020/11/13 Python
python 实现超级玛丽游戏
2020/11/25 Python
Fashion Eyewear美国:英国线上设计师眼镜和太阳镜的零售商
2016/08/15 全球购物
会计主管岗位职责范文
2013/11/08 职场文书
教师节宣传方案
2014/05/23 职场文书
超市食品安全承诺书
2015/04/29 职场文书
个人维稳承诺书
2015/05/04 职场文书
退休职工欢送会致辞
2015/08/01 职场文书
Nginx 过滤静态资源文件的访问日志的实现
2021/03/31 Servers
python自动化调用百度api解决验证码
2021/04/13 Python
Nginx如何配置Http、Https、WS、WSS的方法步骤
2021/05/11 Servers
九大龙王魂骨,山龙王留下躯干骨,榜首死的最憋屈(被捏碎)
2022/03/18 国漫