Как стать автором
Обновить
  • по релевантности
  • по времени
  • по рейтингу

Как не потерять деньги в черном ящике: методы тестирования биллинга

Блог компании Badoo Тестирование IT-систем *Платежные системы *Тестирование веб-сервисов *Тестирование мобильных приложений *
Проверка платных сервисов — один из ключевых инженерных вопросов в тестировании Badoo. Наше приложение интегрировано с 70 платёжными провайдерами в 250 странах мира, и баг хотя бы в одном из них может привести к непредсказуемым последствиям. 

В этой статье я расскажу о методах тестирования, которые мы используем в Badoo, и о границах применимости этих методов — этапах тестирования, на которых они максимально эффективны. 

Статья будет полезна тестировщикам, разработчикам и продакт-менеджерам, чьи проекты уже интегрированы с платёжными провайдерами, или процесс интеграции только начинается. Если в своей работе вы сталкиваетесь с проблемой выбора методов тестирования таких интеграций, добро пожаловать под кат! 



Читать дальше →
Всего голосов 39: ↑38 и ↓1 +37
Просмотры 11K
Комментарии 9

Я сомневался в юнит-тестах, но…

Блог компании Skyeng Разработка веб-сайтов *PHP *Проектирование и рефакторинг *Отладка *
Когда я пишу тест, то часто не уверен, что мой дизайн будет на 100% удачным. И хочу, чтобы он давал гибкость в рефакторинге кода — например, чтобы затем изменить класс, не меняя код теста.



Но если у меня стандартная пирамида, внизу которой много юнит-тестов, то не получится ли так, что тесты будут знать не про поведение системы, а про то, какие классы там есть?
Всего голосов 32: ↑30 и ↓2 +28
Просмотры 6.2K
Комментарии 8

Работа с частичными моками в PHPUnit 10

Блог компании Badoo Разработка веб-сайтов *PHP *Программирование *Тестирование веб-сервисов *

В этом году должен выйти PHPUnit 10 (релиз планировался на 2 апреля 2021 года, но был отложен). Если посмотреть на список изменений, то бросается в глаза большое количество удалений устаревшего кода. Одним из таких изменений является удаление метода MockBuilder::setMethods(), который активно использовался при работе с частичными моками. Этот метод не рекомендуется использовать с версии 8.0, но тем не менее он описан в документации без каких-либо альтернатив и упоминания о его нежелательности. Если почитать исходники PHPUnit, issues и пул-реквесты на GitHub, то станет понятно, почему так и какие есть альтернативы.

В этой статье я освещу этот нюанс для тех, кто не обращал на него внимания раньше: расскажу про частичные моки, проблемы, возникающие при работе с setMethods, пути их решения, а также затрону вопрос миграции тестов на PHPUnit 10.

Читать далее
Всего голосов 45: ↑45 и ↓0 +45
Просмотры 2.9K
Комментарии 0

Когда использовать mocks в юнит-тестировании

Тестирование IT-систем *Программирование *Анализ и проектирование систем *Проектирование и рефакторинг *Тестирование веб-сервисов *
Перевод

Эта статья является переводом материала «When to Mock».

Использование моков в модульном тестировании является спорной темой. Автор оригинала заметил, что на протяжении всей своей карьеры в программировании он сначала перешел от «моков почти для каждой зависимости» к политике «без моков», а затем к «только моки для внешних зависимостей».

Ни одна из этих практик не является достаточно хорошей. В этой статье Владимир Хориков покажет, какие зависимости следует мокать, а какие использовать как есть в тестах.

Читать далее
Всего голосов 16: ↑16 и ↓0 +16
Просмотры 7.4K
Комментарии 6