У меня есть ниже тестовый скрипт:PHPUnit: Отсутствует аргумент 1 для с DataProvider
class testTest extends PHPUnit_Framework_TestCase
{
public function provider() {
return [
[1,false],
[2,true]
];
}
/**
* @test
* @provider provider
*/
public function test_test($num, $expected) {
$actual = $num%2 ? false : true;
$this->assertEquals($actual, $expected);
}
}
Всякий раз, когда я запускаю это я получаю ошибку:
1) testTest::test_test
Missing argument 1 for testTest::test_test()
У меня есть другие тесты в тестовом костюме которые не используют dataProviders, и они работают нормально. Как это исправить ?
Вы можете вставить весь класс? Но сначала попробуйте изменить имя метода поставщиков данных из 'testDataProvider' в' provider' (также измените имя в аннотации) – rokas
Проверьте обновление. Изменил testDataProvider провайдеру, как вы предложили, но не повезло. –