Добрый день, при приемочных тестах использую webdriver. Мне необходимо протестировать полный цикл денежной транзакции. но этот цикл разбит на несколько частей:
1. создание, логирование транзакции на стороне сервера, отправка пользователя на оплату.
2. прием Callback от платежной системы
3. прием пользователя.
Эти три теста невозможно провести независимо, по причини уникальности транзакций. мне необходимо сначала создать тразакцию (и проверить что она создалась верно) затем на основе этих данных сгенерировать callback и отправить его себе, зачесть транзакцию, и после запускать 3 тест, для переадресации пользователя на страницу успешной оплаты.
подскажите как задать верный порядок? был бы вам очень благодарен. (так же мне необходимо проверять верность данных в бд).
vitaly_74, обычно под таким коллбеком понимают урл на стороне вашего сервера, на другой сервер (платежная система) должна постучаться и выполнить задание. Скорее всего это придется тестить косвенно (что произошел результат подтверждения этой операции, нп. в базе отметка появляется), а не в лоб.
Daria Motorina, да верно, я это понимаю, я могу сэмитировать 3 разных ответа. т.е. 1 успешный, 2 не удачный, 3. в статусе "ожидания". других не дано (либо колбэк с левыми данными). большего мне не нужно, главное удостовериться что на моей стороне нет ошибок и всё работает корректно. остальное уже руками и с помощью лога тестируется/проверяется.
Advanced usage - раздел Dependencies - чтобы один метод выполнялся строго после другого.
Cest'ы по порядку можно задать только засчет алфавитного порядка в названиях (создатель отклонил возможность задавать порядок вручную).
а можете показать пример как из acceptive test с webdriver вызвать ApiTest с phpBrowser?
Например так:
@depends psp/PaymentSystem: sendNotification
т.е. из нашего теста вызываем класс Paymentsystem а в нем сам тест отправки уведомлений sendNotification?
vitaly_74, у меня нет живого примера, чтобы подтвердить)
Зависимость в аннотации за пределами класса скорее всего не будет работать - это нарушение изоляции Cest'a.