Software quality assurance days
17 Международная конференция
по вопросам качества ПО
sqadays.com
Минск. 29–30 мая 2015
Александр Неделяев
Itera. Киев, Украина
TestOps. Расширяем традиционные
обязанности тестировщика
TestOps. Расширяем традиционные обязанности тестировщика
Об авторе
5 лет в тестировании
2 года в тестировании
ИТ инфраструктуры
nedeliaev@gmail.com
nedeliaev
Alexander Nedeliaev
TestOps. Расширяем традиционные обязанности тестировщика
Что такое ИТ инфраструктура
TestOps. Расширяем традиционные обязанности тестировщика
Что такое ИТ инфраструктура
•
OS
•
CRM
•
ERP
•
Email
•
Database:
Oracle, SQL Server, MySQL
•
Web servers:
IIS, Apache
•
Application servers:
WebSphere, Tomcat, JBoss, MS .Net
Application
•
Servers:
Windows Server, Solaris, Linux
•
Virtualization:
VMware, Hyper-V, Citrix XenServer
•
Storage:
SAN, NAS, RAID, S.M.A.R.T
•
Network:
LAN, WLAN, VPN
Middleware
Hardware
TestOps. Расширяем традиционные обязанности тестировщика
Что такое ИТ инфраструктура
TestOps. Расширяем традиционные обязанности тестировщика
Продукт
TestOps. Расширяем традиционные обязанности тестировщика
Пользователь
TestOps. Расширяем традиционные обязанности тестировщика
Команда
TestOps. Расширяем традиционные обязанности тестировщика
Test Engineer
TestOps. Расширяем традиционные обязанности тестировщика
Test Engineer - Портрет
•
Работает в тестовой среде
•
Видит продукт в разобранном виде
•
Получает однозначные результаты тестов
•
Автоматизирует процесс тестирования
TestOps. Расширяем традиционные обязанности тестировщика
Test Engineer - Процесс
Тесты
Тестируемая
система
Оценка
результата
Оценка
качества
Запускаем тесты
Результаты тестов
Pass / Fail
Фаза
Традиционное тестирование
Вход
Тесты
Выход
Результаты тестов
Оценка
Pass / Fail
TestOps. Расширяем традиционные обязанности тестировщика
Operations Specialist
TestOps. Расширяем традиционные обязанности тестировщика
Operations Specialist - Портрет
•
Работает в продакшн среде
•
Видит продукт в контексте инфраструктуры
•
Получает разностороннюю информацию о системе
•
Любимый инструмент: бубен
мониторинг
TestOps. Расширяем традиционные обязанности тестировщика
Общая цель
TestOps. Расширяем традиционные обязанности тестировщика
Testing + Operations = TestOps
Тестирование в продакшн среде
1.
Подходы
2.
Сбор и анализ телеметрии
3.
Мониторинг и синтетические тесты
TestOps. Расширяем традиционные обязанности тестировщика
Зачем тестировать в продакшн среде
TestOps. Расширяем традиционные обязанности тестировщика
Подходы
•
Постепенное развертывание и А / Б тестирование
•
Уменьшаем риски
•
Тестируем предположения
•
Кто использует: Samsung, Microsoft, Twitter, Facebook
•
Деструктивное тестирование
•
Проверка непрерывности сервиса в случае проблем с
аппаратным обеспечением
•
Пример: Netflix Chaos Monkey
TestOps. Расширяем традиционные обязанности тестировщика
Сбор и анализ телеметрии
TestOps. Расширяем традиционные обязанности тестировщика
Сбор и анализ телеметрии
•
Инструмент для отслеживания
производительности Google Dapper собирает
более 1 Тб данных; все данные хранятся 2 недели
•
Сервис логирования Facebook Scribe собирает
25 Тб данных в день
•
Twitter собирает 12 Тб данных в день
•
eBay собирает 50 Тб данных в день
TestOps. Расширяем традиционные обязанности тестировщика
Сбор и анализ телеметрии
TestOps. Расширяем традиционные обязанности тестировщика
Мониторинг и синтетические тесты
Традиционный мониторинг ИТ инфраструктуры
•
Состояние элементов инфраструктуры: ping, uptime
•
Использование ресурсов
Синтетические тесты
•
Синтетические тесты симулируют поведение
пользователя
•
Ключевые показатели эфективности приложения:
время отклика, частота и продолжительность транзакций
TestOps. Расширяем традиционные обязанности тестировщика
Мониторинг и синтетические тесты
•
Dynatrace User Experience Management
•
Dynatrace Synthetic Monitoring
•
AlertSite UXM
•
Lucierna
•
Applications Manager
•
IT360
•
OpManager
•
Orion APM
Мониторинг и синтетические тесты
Реальные
пользовател
и
Тестируемая
система
Анализ
данных
Оценка
качества
TestOps. Расширяем традиционные обязанности тестировщика
TestOps - Процесс
Работа с системой
Данные телеметрии
KPI и шаблоны
Тесты и
мониторы
Активный мониторинг
Фаза
Традиционное тестирование
TestOps
Вход
Тесты
Работа с системой
Выход
Результаты тестов
Данные телеметрии
Оценка
Pass / Fail
KPI и шаблоны
TestOps. Расширяем традиционные обязанности тестировщика
Выводы
TestOps подход позволяет:
получить ключевые показатели
эффективности работы системы
•
из большего количества источников
•
в реальном времени
•
в продакшн среде
спрогнозировать и предупредить
появление ошибок,
зависящих от ИТ инфраструктуры
TestOps. Расширяем традиционные обязанности тестировщика
Спасибо!
Роль TestOps: расширяем традиционные обязанности тестировщика