从测试用例类中分离数据提供者

时间:2017-06-04 09:47:33

标签: php unit-testing phpunit dataprovider

我想用PHPUnit来测试我的PHP类。

是否可以将我的测试方法的数据提供程序放在仅为存储数据提供程序而创建的单独文件中?如果是这样怎么做?

另一个问题是它是一个好的做法,还是将测试和数据提供者方法保存在同一个测试类中可能会更好。

2 个答案:

答案 0 :(得分:4)

只需使用@dataProvider class::method来使用与测试用例类不同的类中的方法作为测试的数据提供者。

答案 1 :(得分:0)

在Laravel 5.7中,我使用了:

来自测试:

from("file:///home/xyz/?fileName=file.txt&charset=utf-8&noop=true")
    .convertBodyTo(String.class)
    .multicast()
    ...

来自ClassNameDataProvider:

@dataProvider \App\Tests\DataProviders\ClassNameDataProvider::dataMethodName()