簡単に言うと、テストを実行するときにphpunitは複数のデータプロバイダーを使用できますか?
たとえば、getById というメソッドがあり、成功したテストケースと失敗したテストケースの両方を実行する必要があります。
成功したテストケースは、対応するレコードを返すことができることを意味します。失敗した場合、入力は無効と失敗の 2 つのカテゴリに分類されます。
無効は入力が正当でないことを意味し、失敗は入力が有効である可能性があるが、その ID に対応するレコードがないことを意味します。
したがって、コードは次のようになります。
/**
* @dataProvider provideInvalidId
* @dataProvider provideFailedId
*/
public function testGetByIdUnsuccess($id)
{
$this->assertNull($this->model->getById($id));
}
しかし、最初のデータ プロバイダーのみが使用され、2 番目のデータ プロバイダーは無視されていることが判明しました。このシナリオが一般的かどうかはわかりませんが、ここで質問です。複数のデータプロバイダーを使用できますか? できるとしたら、どうやって?
PS:ここではあまり助けが見つかりませんでした