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

yipeiwu_com6年前Python基础

当我们写了一个单个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设计】。

相关文章

python3 字符串/列表/元组(str/list/tuple)相互转换方法及join()函数的使用

在抓取网络数据的时候,有时会用正则对结构化的数据进行提取,比如 href="https://www.1234.com"等。python的re模块的findall()函数会返回一个所有匹配...

python中__call__方法示例分析

本文实例讲述了python中__call__方法的用法,分享给大家供大家参考。具体方法分析如下: Python中的__call__允许程序员创建可调用的对象(实例),默认情况下, __c...

一道python走迷宫算法题

一道python走迷宫算法题

前几天逛博客时看到了这样一道问题,感觉比较有趣,就自己思考了下方案顺便用python实现了一下。题目如下: 用一个二维数组表示一个简单的迷宫,用0表示通路,用1表示阻断,老鼠在每个点上可...

python获取当前日期和时间的方法

本文实例讲述了python获取当前日期和时间的方法。分享给大家供大家参考。具体如下: import datetime # Get a datetime object now = da...

python结合opencv实现人脸检测与跟踪

python结合opencv实现人脸检测与跟踪

模式识别课上老师留了个实验,在VC++环境下利用OpenCV库编程实现人脸检测与跟踪。 然后就开始下载opencv和vs2012,再然后,配置了好几次还是配置不成功,这里不得不吐槽下微软...