如何在单元测试发现器中将特定文件与 shell 模式匹配?

问题描述 投票:0回答:1

我想运行一套单元测试。基本代码是:

suite = unittest.defaultTestLoader.discover('tests')

该函数的文档提到了

pattern
参数,默认为
test_*.py
:

仅加载与模式匹配的测试文件。 (使用 shell 样式模式匹配。)

我只想运行其中一些测试,例如

test_abcd
test_ab1
test_ab3
,但不运行
test_ab2
(因为它导入的文件可能不存在)。在 shell 中,我可以将这些文件与:

test_{abcd,ab1,ab3}

但是它在测试发现器内部失败了。我也尝试过这些模式,但它们都不能在发现者内部工作:

test_\(abcd|ab1|ab3\)
test_abcd,test_ab1,test_ab3

在发现者内部起作用的一种模式是

test_ab[2-4]
,但它也会捕获
test_ab3
,这是我不想要的。

如何将这些特定文件与 shell 模式或单元测试发现器相匹配?

python regex shell unit-testing
1个回答
0
投票

去掉反斜杠,它就可以如你所愿地匹配。

enter image description here

© www.soinside.com 2019 - 2024. All rights reserved.