UnitTest 框架 - 测试发现


TestLoader 类有一个discover() 函数。Python 测试框架使用它来进行简单的测试发现。为了兼容,包含测试的模块和包必须可以从顶级目录导入。

以下是测试发现的基本命令行用法 -

Python –m unittest discover

解释器尝试递归地从当前目录和内部目录加载包含 test 的所有模块。其他命令行选项是 -

先生。 选项和说明
1

-v, --详细

详细输出

2

-s, --开始目录

目录 开始发现的目录(.默认)

3

-p,--模式

匹配测试文件的模式(默认为 test*.py)

4

-t, --顶级目录

目录 项目的顶级目录(默认为启动目录)

例如,为了发现“tests”目录中名称以“assert”开头的模块中的测试,请使用以下命令行 -

C:\python27>python –m unittest –v –s "c:\test" –p "assert*.py"

测试发现通过导入测试来加载测试。一旦测试发现从您指定的起始目录找到所有测试文件,它会将路径转换为要导入的包名称。

如果您提供起始目录作为包名称而不是目录路径,则 discovery 会假定它导入的位置就是您想要的位置,因此您不会收到警告。