简短的问题:phpunit在运行测试时能否使用多个数据提供程序?
例如,我有一个名为getById的方法,并且我需要为其运行成功和不成功的测试用例。
成功的测试用例意味着它可以返回相应的记录。对于不成功的测试用例,输入可以分为两类:无效和失败。
无效意味着输入不合法,而失败则意味着输入可能有效,但没有与该ID相对应的记录。
所以代码像这样:
但事实证明,只有第一个数据提供程序被使用了,忽略了第二个。虽然我不确定这种情况是否常见,但问题在于:我们可以使用多个数据提供程序吗?如果可以,应该如何操作?
PS: 在此处没有找到太多帮助。
例如,我有一个名为getById的方法,并且我需要为其运行成功和不成功的测试用例。
成功的测试用例意味着它可以返回相应的记录。对于不成功的测试用例,输入可以分为两类:无效和失败。
无效意味着输入不合法,而失败则意味着输入可能有效,但没有与该ID相对应的记录。
所以代码像这样:
/**
* @dataProvider provideInvalidId
* @dataProvider provideFailedId
*/
public function testGetByIdUnsuccess($id)
{
$this->assertNull($this->model->getById($id));
}
但事实证明,只有第一个数据提供程序被使用了,忽略了第二个。虽然我不确定这种情况是否常见,但问题在于:我们可以使用多个数据提供程序吗?如果可以,应该如何操作?
PS: 在此处没有找到太多帮助。