Framework для автоматизации тестирования и функционального мониторинга в Яндексе или Автостопом по Акве.

Содержание

Слайд 2

Михаил Левин, Яндекс
Руководитель группы тестирования
emails: levsha@yandex-team.ru
lev932@yandex.ru

Михаил Левин, Яндекс Руководитель группы тестирования emails: levsha@yandex-team.ru lev932@yandex.ru

Слайд 4

50

*

* Серверов в последней версии AQuA

50 * * Серверов в последней версии AQuA

Слайд 5

50 000

*

Давайте померяемся ☺

* Тестовых классов в день

50 000 * Давайте померяемся ☺ * Тестовых классов в день

Слайд 7

Почему?

Рост команды

Рост числа тестов

Частота запуска тестов

Потребность в единообразии

Требования к надежности системы

Требования к

Почему? Рост команды Рост числа тестов Частота запуска тестов Потребность в единообразии
функционалу системы

Слайд 9

История!

История!

Слайд 10

Ppsha

+ Monitoring

Alpha

Beta

… Bonus!

Katiusha

Gamma

Ppsha + Monitoring Alpha Beta … Bonus! Katiusha Gamma

Слайд 11

Ppsha

+ Monitoring

Alpha

Beta

Katiusha

Gamma

Ppsha + Monitoring Alpha Beta Katiusha Gamma

Слайд 12

Ppsha

Начало

Ручное тестирование
Тесты на Perl
Selenium RC 0.9b

Ppsha Начало Ручное тестирование Тесты на Perl Selenium RC 0.9b

Слайд 13

Доставка и хранилище

Заливаем код в SVN
Собираем все тесты в

Доставка и хранилище Заливаем код в SVN Собираем все тесты в один
один JAR
Парсим структуру тестов в XML

Ppsha

Слайд 14

Создаем профили
Задаем частоту запуска
Задаем получателей
Просматриваем отчеты

Ppsha

Интерфейсы

Создаем профили Задаем частоту запуска Задаем получателей Просматриваем отчеты Ppsha Интерфейсы

Слайд 16

Исполнение тестов

Ручной запуск, HTTP, Cron
20 selenium servers v0.9b
Firefox 2.0
Подготовка HTML отчета

Ppsha

Исполнение тестов Ручной запуск, HTTP, Cron 20 selenium servers v0.9b Firefox 2.0 Подготовка HTML отчета Ppsha

Слайд 17

Единообразная
обработка
ошибок и генерация отчетов

Сервисы

Запуск
селениума

Различные виды запуска тестов

Снятие
скриншотов
Сохранение
html

Прозрачная работа

Единообразная обработка ошибок и генерация отчетов Сервисы Запуск селениума Различные виды запуска
с параметрами для тестов

Слайд 18

Ppsha

+ Monitoring

Alpha

Beta

Katiusha

Gamma

Ppsha + Monitoring Alpha Beta Katiusha Gamma

Слайд 19

Katiusha

Две машины

Katiusha Две машины

Слайд 20

Katiusha

Monitoring

Katiusha Monitoring

Слайд 21

Куча тестов

Monitoring

*

* Оценка сверху ☺

Куча тестов Monitoring * * Оценка сверху ☺

Слайд 23

Солдат спит, робот идет

Monitoring

Cron

Солдат спит, робот идет Monitoring Cron

Слайд 24

Надо ли запускать тесты в продакшене??!!?

Monitoring

Надо ли запускать тесты в продакшене??!!? Monitoring

Слайд 25

Функциональный мониторинг

Убеждаться что жив функционал,
а не сервера

Ловить плавающие ошибки

Monitoring

Функциональный мониторинг Убеждаться что жив функционал, а не сервера Ловить плавающие ошибки Monitoring

Слайд 26

Быстро уведомлять,
но когда точно сломалось!

SMS или Email

Выставлять веса ошибкам

Уведомлять после нескольких

Быстро уведомлять, но когда точно сломалось! SMS или Email Выставлять веса ошибкам
поломок подряд

Monitoring

Слайд 27

Ppsha

+ Monitoring

Alpha

Beta

Katiusha

Gamma

Ppsha + Monitoring Alpha Beta Katiusha Gamma

Слайд 28

Интерфейс
Репорты

Дерево тестов
XML

Java агент

Seleniums
Firefox 2.0

Cron

PPSHA и Katiusha

Alpha

Seleniums
Firefox
IE

Дерево тестов
MySQL

Альфа архитектуры

Интерфейс Репорты Дерево тестов XML Java агент Seleniums Firefox 2.0 Cron PPSHA

Слайд 29

Надо ли запускать «версточные» тесты кроссбраузерно?

Alpha

Надо ли запускать «версточные» тесты кроссбраузерно? Alpha

Слайд 30

Ppsha

+ Monitoring

Alpha

Beta

Katiusha

Gamma

Ppsha + Monitoring Alpha Beta Katiusha Gamma

Слайд 31

Структура
Тестов

Очередь
тестов

Интерфейс

Cron

Репорты

MySQL

Beta

JAR

JAR

JAR

/opt

2

2

15

10

Структура Тестов Очередь тестов Интерфейс Cron Репорты MySQL Beta JAR JAR JAR

Слайд 32

Beta

Кластер
Мониторинга

Кластер
Тестирования

Beta Кластер Мониторинга Кластер Тестирования

Слайд 34

Ppsha

+ Monitoring

Alpha

Beta

Katiusha

Gamma

Ppsha + Monitoring Alpha Beta Katiusha Gamma

Слайд 35

Структура
Тестов

Очередь
тестов

Интерфейс

Cron

Репорты

MySQL

Gamma

/opt

Что будем улучшать?

Структура Тестов Очередь тестов Интерфейс Cron Репорты MySQL Gamma /opt Что будем улучшать?

Слайд 36

Gamma

Хотим побеждать

Очередь

Старый селениум 1.03

Файловое хранилище

Gamma Хотим побеждать Очередь Старый селениум 1.03 Файловое хранилище

Слайд 38

А зачем нам
selenium???

А зачем нам selenium???

Слайд 39

У селениума своя область применения

Manual
tests

У селениума своя область применения Manual tests

Слайд 40

HTTP requests

HTTP requests
Имя файла: Framework-для-автоматизации-тестирования-и-функционального-мониторинга-в-Яндексе-или-Автостопом-по-Акве..pptx
Количество просмотров: 151
Количество скачиваний: 0