5. MOBILE OPTIMIZED|JUNE 2014| 5
Сложности тестирования интеграции со сторонними сервисами
• Отсутствие доступа к сторонним системам
• Отсутствие тестовых интерфейсов
• Сложно тестировать ошибки
• Сложно или долго проверять результат
6. MOBILE OPTIMIZED|JUNE 2014| 6
Возможные проблемы при интеграции с собственными сервисами
• Получаемые данные зависят от случайных величин
• Получаемые данные зависят от третьих сторон
• Некоторые события сложно или долго воспроизводить
• Отсутствие полного контроля над сервером
12. MOBILE OPTIMIZED|JUNE 2014| 12
Позитивные тесты
• Аутенфикация и параметры сервиса (токены, айди, настройки, итд)
• Корректность отправляемых данных
• Корректность обработки полученных данных
• Проверка того что сервис используется в тех местах где это нужно и только
когда нужно
13. MOBILE OPTIMIZED|JUNE 2014| 13
Негативные тесты
• Обработка ошибок
• Уровень сервиса – ошибки описанные в документации
• Уровень протокола – ошибки HTTP 401, 404, 500 итд
• Уровень сети – обрыв связи, отсутствие ответа
• Работа в медленных сетях
15. MOBILE OPTIMIZED|JUNE 2014| 15
Доступ к информации с помощью прокси-сервера
• Проверка настроек SDK/API
• Можно проверять отправляемые данные
• Можно сверять полученные данные с тем что происходит в приложении
• Лог запросов часто поможет понять как воспроизвести баг
16. MOBILE OPTIMIZED|JUNE 2014| 16
В каком виде лучше сохранять информацию в баг
• Адрес сервера
• Время запроса
• Заголовки и тело запроса
• Заголовки и тело ответа
• Дополнительно: полный лог сессии
17. MOBILE OPTIMIZED|JUNE 2014| 17
Манипуляция данными
• Breakpoints
• Редактирование запросов
• Редактирование ответов
• Симуляция ошибок
• Тест запуска и отправки в бэкграунд на таймаут
• Throttling
• Замедляем интернет. Всем, либо выборочно.
18. MOBILE OPTIMIZED|JUNE 2014| 18
Манипуляция данными
• DNS spoofing - замена сервера
• Map Remote – перенаправление отдельных запросов на другой сервер
• Map Local – подстановка ответов из файла
• Rewrite – Автоматическое изменение данных в запросах и ответах
20. MOBILE OPTIMIZED|JUNE 2014| 20
Куда можно расти с таким опытом?
• Функциональное тестирование веб-сервисов
• Тестирование безопасности веб-сервисов
• Автоматизация тестирования