Successfully reported this slideshow.

Особенности тестирования облачных сервисов

1,949 views

Published on

Доклад Очира Абушинова на конференции SQADays-15, 18.04.2014, г.Москва

Published in: Education
  • Be the first to comment

Особенности тестирования облачных сервисов

  1. 1. Особенности тестирования облачных сервисов Очир Абушинов. WWPass Corporation
  2. 2. Обо мне • Более 8 лет в тестировании и QA • Прошел путь от тестирования ПО авионики до руководства отделом QA • Специализации: ✓ Стратегия тестирования ✓ Автоматизация на Python,Ruby ✓ Тестирование безопасности • Глава департамента QA
  3. 3. ! • Основана в 2008, головной офис в Нью-Гемпшире, США • Удобная и безопасная замена логинам и паролям • Облачная аутентификация с расширенной приватностью для конечных пользователей
  4. 4. Что такое «Облако» ! • Доступно с любого устройства с доступом в Интернет • Автоматически масштабируется в зависимости от потребности заказчика • Самые распространенные модели обслуживания - SaaS, PaaS, IaaS • Модель обслуживания WWPass - IDaaS (Identity as a Service)
  5. 5. Архитектура
  6. 6. Что тестируем в «облаке» ! • Бэкенды • Клиентский софт • Библиотеки • API
  7. 7. Особенность нашего «облака» ! • Распределенность
  8. 8. Особенность нашего «облака» ! • Распределенность • Сложная оценка производительности
  9. 9. Особенность нашего «облака» ! • Распределенность • Сложная оценка производительности • Деплоймент
  10. 10. Особенность нашего «облака» ! • Распределенность • Сложная оценка производительности • Деплоймент • Масштабируемость
  11. 11. Особенность нашего «облака» ! • Распределенность • Сложно оценивать производительность • Деплоймент • Масштабируемость • Безопасность
  12. 12. Особенности автоматизации ! • Необходима для тестирования бекендов и API
  13. 13. Особенности автоматизации ! • Необходима для тестирования бекендов и API • Начинается с создания API разработчиками
  14. 14. Особенности автоматизации ! • Необходима для тестирования бекендов и API • Начинается с создания API разработчиками • Активное использование эмуляторов и заглушек
  15. 15. Особенности автоматизации ! • Необходима для тестирования бекендов и API • Начинается с создания API разработчиками • Активное использование эмуляторов и заглушек • Привязка к тестовой инфраструктуре при прогоне тестов
  16. 16. Особенности автоматизации ! • Необходима для тестирования бекендов и API • Начинается с создания API разработчиками • Активное использование эмуляторов и заглушек • Привязка к тестовой инфраструктуре при прогоне тестов • Самописный фреймворк
  17. 17. Особенности тестирования производительности ! • Результаты тестирования в тестовой сети и продакшен могут отличаться
  18. 18. Особенности тестирования производительности ! • Результаты тестирования в тестовой сети и продакшен могут отличаться • Измерение «цепочки» результатов
  19. 19. Особенности тестирования производительности ! • Результаты тестирования в тестовой сети и продакшен могут отличаться • Измерение «цепочки» результатов • Тестирование может занимать много времени (пример - заполнение базы данных)
  20. 20. Особенности тестирования производительности ! • Результаты тестирования в тестовой сети и продакшен могут отличаться • Измерение «цепочки» результатов • Тестирование может занимать много времени (пример - заполнение базы данных) • Самописный фреймворк (кроме веба)
  21. 21. Особенности QA инженеров ! • Требуются навыки системного администрирования
  22. 22. Особенности QA инженеров ! • Навыки системного администрирования • Коммуникативные навыки для общения с админами, менеджерами, разработчиками
  23. 23. Особенности виртуализации ! • Виртуализация необходима для экономии ресурсов
  24. 24. Особенности виртуализации ! • Виртуализация необходима для экономии ресурсов • Не все можно и нужно виртуализировать
  25. 25. Мониторинг • Для проверки доступности сервисов нужны «smoke» тесты
  26. 26. Мониторинг • Для проверки доступности сервисов нужны «smoke» тесты • Необходимо мониторить загрузку CPU, RAM, etc.
  27. 27. Мониторинг • Для проверки доступности сервисов нужны «smoke» тесты • Необходимо мониторить загрузку CPU, RAM, etc. • Можно использовать Munin или Op5
  28. 28. Тестирование безопасности ! • Необходим внешний аудит
  29. 29. Тестирование безопасности ! • Необходим внешний аудит • Быть в курсе последних уязвимостей
  30. 30. Стресс тестирование • Главный источник «негативных» сценариев
  31. 31. Стресс тестирование • Главный источник «негативных» сценариев • Тестовые кейсы иногда приходят из продакшена
  32. 32. Распределенность ! • Сложность диагностирования ошибки
  33. 33. Распределенность ! • Сложность диагностирования ошибки • Помогает система поиска ошибок по логам
  34. 34. Распределенность ! • Сложность диагностирования ошибки • Система поиска ошибок по логам • Необходимость в распределенных серверах в тестовой инфраструктуре
  35. 35. Распределенность ! • Сложность диагностирования ошибки • Система поиска ошибок по логам • Необходимость в распределенных серверах в тестовой инфраструктуре • Нужна развитая система деплоймента
  36. 36. Урок 1 • Разумная «виртуализация»
  37. 37. Урок 2 • Разумная «виртуализация» • Отдельная тестовая инфраструктура
  38. 38. Урок 3 • Разумная «виртуализация» • Отдельная тестовая инфраструктура • Автоматизация рутинных операций
  39. 39. Урок 4 • Разумная «виртуализация» • Отдельная тестовая инфраструктура • Автоматизация рутинных операций • Использование эмуляторов, заглушек, моков
  40. 40. Урок 5 • Разумная «виртуализация» • Отдельная тестовая инфраструктура • Автоматизация рутинных операций • Использование эмуляторов, заглушек, моков • Важность «негативных» сценарий
  41. 41. Спасибо за внимание! ! • Skype: ochir_abushinov • Twitter: CaMypau • Email: o.abushinov@wwpass.com

×