前言:开始用的时候都是把所有的test.py文件放在一个目录下,虽然对运行没什么影响,但是吧,总是不那么好看,且有时候文件名类似,要找好久,就想能不能再创建子文件夹进行分类一下,那又该如何使用discover方法去拿到所有用例呢?下面分享。
可能有人说可以用pytest框架,可以的,我可以用,但是我还想基于Unittest去解决试试。
第一种方法:
testcase目录
上代码:
注释写的很详细,其逻辑很简单,就是先用os.walk()方法拿到所有的py文件名称,再用判断去除非testcase.py文件,添加进case_list列表,再遍历case_list得到单个文件名,然后用discover中的pattern匹配方式去匹配相应文件名的文件得到单个testcase,就可以拿到所有的用例了。
特别注意一点:要想拿到所有的testcase必须在每个文件夹中有一个__init__.py文件引导,否则无法获取。
# pro_path是工程目录,构造了一个case_pth路径
case_path = os.path.join(pro_path, "testcase")
suit = unittest.TestSuite()