Warning: Cannot use a scalar value as an array in /home/admin/public_html/forum/include/fm.class.php on line 757

Warning: Invalid argument supplied for foreach() in /home/admin/public_html/forum/include/fm.class.php on line 770
Форумы портала PHP.SU :: Версия для печати :: определить какой из тестов упал? codeception + PHP
Форумы портала PHP.SU » » Вопросы новичков » определить какой из тестов упал? codeception + PHP

Страниц (1): [1]
 

1. Макс345 - 11 Июня, 2019 - 16:08:22 - перейти к сообщению
Здравствуйте.
Для тестов использую codeception + PHP

Есть тест с датапровайдером. Как определить какой из тестов упал?


/**
* Самовывоз, поиск магазина
* @dataProvider setPickupFindAddress
*/
public function pickupFindAddress(\Page\Petshop $petshop, \Codeception\Example $example, \AcceptanceTester $I) {
$artNum = $example['prod']::ART_NUMBER;

$delivery['delivery'] = $example['delivery'];
$delivery['check'] = $example['check'];
$delivery['address'] = $example['address'];

// 1. В корзину добавлен товар
$product = $petshop->find($artNum);
$product->addInBasket();

// 2. Открыта корзина
$basket = $petshop->openBasket();

// 3. Нажата кнопка Оформить заказ
$order = $basket->regOrder();

// 4. Доставка - самовывоз
$order->delivery($delivery);

//ПРОВЕРКА ДОСТАВКИ
$I->checkDelivery($I, $order, $example);
}

/**Самовывоз, поиск магазина
* */
protected function setPickupFindAddress()
{
return [
[
'prod' => self::PROD1, 'delivery' => ORDER:Голливудская улыбкаELIVERY_PICKUP, 'check' => 'find', 'address' => 'Савушкина',
],
[
'prod' => self::PROD2, 'delivery' => ORDER:Голливудская улыбкаELIVERY_PICKUP, 'check' => 'find', 'address' => 'Савушкина',
]
];
}
2. LIME - 11 Июня, 2019 - 19:09:20 - перейти к сообщению
поэтому я не использую датапровайдер
он годится чтоб покрывать тестами готовый код
а если подходить к разработке через TDD (тоесть использовать тесты при отладке самого кодинга), то удобнее под каждый кейс писать отдельный тест с говорящим именем
конечно можно использовать внутри приватный общий метод чтоб поменьше копипастить
тоесть так - начинаем писать кейс на ексепшн при пустом параметре..
сделали тест - пишем код
следующий кейс
и тд
(Добавление)
и после каждого кейса запускаем весь класс чтоб не отвалился предыдущий
итд

 

Powered by ExBB FM 1.0 RC1