如何在phpunit中从数据提供程序中运行一个特定的数据?

15
3个回答

27

我发现只需添加#n就可轻松处理数字索引数据提供者。

phpunit --filter ClassName::testName#datasetNumber

添加@name来为关联索引的命名数据提供程序命名。

phpunit --filter ClassName::testName@datasetName

您也可以使用正则表达式。请参阅文档以获取更多示例。


2

如果数据集的名称包含空格,不仅可以使用引号,还可以使用“\”(至少在像sh或bash这样的shell中)

phpunit --filter ClassName::testCase@data\ set\ name

我在Windows上使用ConEmu和经典的cmd,需要在“ClassName :: testCase @ data set name”周围添加",不需要在空格前使用反斜杠。 - hejdav
这就是为什么我的答案是在你的答案之上的原因。 - SomeOne_1
请注意,提供程序的名称必须与其定义完全相同,但方法的名称可以包含部分文本。 "testCase@data set na" 将无法工作,但 "stCase@data set name" 可以。 - yvoyer

1
如果数据集的名称包含空格,可以使用以下命令(注意引号):
``` phpunit --filter "ClassName::testCase@data set name" ```

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接