Я пишу обертку PHP вокруг стороннего API. Более того, для практики, но я также не вижу хорошего в любой момент, так что, возможно, он будет использоваться другими в будущем.
Мои модульные тесты были довольно простыми, за исключением случаев, когда я попал в лимит.
Разработчик API получил ограничение максимальных запросов (1 в секунду, 20 в минуту), а мои модульные тесты получают доступ к конечным точкам API через мою API-оболочку, следовательно, тестирование моей оболочки. Однако запущенный phpunit
начал возвращать 429 too many requests
. Очевидно, что Phpunit запускает те же тесты, что и у меня, все из которых слишком быстро обращаются к конечным точкам и дают мне эту ошибку.
Кто-нибудь знает, должен ли я a) высмеивать эти ответы , и б) как я буду издеваться над ответами, если я тестирую свою обертку? , Что хорошего в тестах, если они не работают на моем фактическом объекте-оболочке и, конечно же, я не хочу, чтобы мои обманщики использовали макетные ответы?
Я новичок в модульном тестировании, я чувствую себя очень неудобно с этой идеей на данный момент, однако я начинаю согреваться!
Очень хороший вопрос! Это обычная проблема, когда вы новичок в тестировании.
Во-первых, сделайте различие между тестированием модулей и интеграции:
Я бы сделал следующее:
Издевательские ответы – сложный бизнес. Если вы попытаетесь сделать это в один прекрасный день, вы столкнетесь с проблемами при изменении стороннего API. Если вы все еще хотите пройти этот путь, посмотрите https://github.com/coduo/tutu .