Тестирование функционала корзины?

я вижу чтоб протестировать этот функционал мне нужно 3 уровня

1й протестировать сами обьекты

$product = new Product(123);
$basket->add($product)

assert (  instanceof $basket->get(123) == \namespace\Product );
$basket->remove( 123 );
assert( false === $basket->getAll() )


2й протестировать формы и route возвращающий содержание корзины

$crawler = $client->request(‘POST’, “/basket/add” );

$form = $crawler->filter('#formID')->form();
$form->setValues(array(
    "form[productId]” => 123,
    "form[quontity]”  => 4
));
$response = $client->getResponse();
// assert status code

$crawler = $client->request('GET', “/basket/getAll” );
$response = $client->getResponse();
// foreach basketItems и найти положеный ProductId

$crawler = $client->request('GET', “/basket/delete/123” );
$response = $client->getResponse();
// check status code и повторить /basket/getAll проверить что продукт удалился


3й протестировать javascript во всех браузерах
через селениум открыть страницу продукта и кликнуть на кнопку "добавить в корзину", дождаться ajax ответа. вызвать ajaxом route /basket/getAll проверить что в JSON лежит продукт, нажать на кнопку "удалить из корзины" ну и проверить еще раз

я вообще на правильном пути?
только начинаю с тестированием

заранее спасибо
  • Вопрос задан
  • 802 просмотра
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы