Upload
rina-uzhevko
View
190
Download
0
Tags:
Embed Size (px)
Citation preview
1 © 2015 Align Technology, Inc. All rights reserved. © 2013 Align Technology, Inc. All rights reserved. © 2015 Align Technology, Inc. All rights reserved.
ROCS2Advanced platform for automated test execution in clustered environments
28.07.2015
Константин Мельников
2 © 2015 Align Technology, Inc. All rights reserved.
Align Technology
• Align Technology, Inc – лидер в области “невидимой ортодонтии”.
• альтернатива брекетам
• на рынке с 1999г.
• Мы помогаем людям улыбаться больше и таким образом делаем людей счастливее (> 3M пациентов)
• Размер R&D: ~250 человек (100+ Москва)
• Сайт компании - www.aligntech.com
3 © 2015 Align Technology, Inc. All rights reserved.
Проекты Align
• IDS- Портал для работы с докторами
• ClinCheck - Приложение для работы с предложенным курсом лечения
• Treat - 3D редактор для разработки курса лечения
• MAT- Серверная часть для обслуживания сканеров
• Множество вспомогательных инструментов в технологии производства
4 © 2015 Align Technology, Inc. All rights reserved.
Основные сложности тестирования в Align
• Много продуктов- Тесты написаны с использованием различных технологий
- Запускаются на различных машинах
• Много тяжелых тестов (e2e)
• Особые требования к покрытию тестами всех бизнес требований (traceability)
5 © 2015 Align Technology, Inc. All rights reserved.
Основные сложности тестирования в Align - развитие
• Команды стали - создавать различные фреймворки для тестирования
- Использовать разные способы кластеризации
• Как следствие- Стало уходить много времени на поддержку различных
решений
- Многие проблемы решались множество раз в разных местах
6 © 2015 Align Technology, Inc. All rights reserved.
Прежние решения?
• Большинство решений поддерживали только один тип тестов (Selenium Grid, QTP, private scripts, etc.)
• Отсутствовала поддержка для разнообразия nodes в кластерах (Windows, Linux, Mac OS)
• Ограниченная параллелизации тестировочных процессов
7 © 2015 Align Technology, Inc. All rights reserved. © 2013 Align Technology, Inc. All rights reserved. Confidential—For Internal Use Only© 2015 Align Technology, Inc. All rights reserved.
ROCS2
8 © 2015 Align Technology, Inc. All rights reserved.
Платформа – ROCS 2
• Различные типы nodes- Linux и Windows
- Различный софт может быть установлен на разные машины
• Поддержка продвинутого параллелизма
• Возможность запускать различные виды тестов
• Поддержка интеграции с другими системами (Bamboo)
9 © 2015 Align Technology, Inc. All rights reserved.
Команда и процесс
• Мультифункциональная мини команда из 2 человек
• Поддерживаем тестирование 4 продуктов
• Используем SCRUM- Итеративная разработка
- Частые обновления кластеров (еженедельные и чаще)
10 © 2015 Align Technology, Inc. All rights reserved.
ROCS2 глазами пользователя
• Стандартная инсталляция пакета
• Основное средство общения с системой – командная строка
- Возможность писать свои скрипты
- Типичный workflow• > r2 ids-tests run –file run_configuration.json
• > r2 run status –id <id_of_the_run>
• > r2 run report –id <id_of_the_run>
• Привычные отчеты по запускам, workflow дорабатывается под каждую команду отдельно
- Treat HRP (отчет приходит на email)
- MAT отчет через Bamboo
11 © 2015 Align Technology, Inc. All rights reserved.
Взгляд со стороны IT
• SJ кластер на 50 машин (IDS, MAT, CC)
• MSK кластер на 150 машин (Treat)
12 © 2015 Align Technology, Inc. All rights reserved.
Компоненты
• Использован подход микро-сервисов в архитектуре
• Python + RabbitMQ + PostgreSQL + MongoDB
13 © 2015 Align Technology, Inc. All rights reserved.
Чего достигли
• Тестируем чаще и больше: Июль 2014 – 17 000 тестов, Июнь 2015 – 413 000 тестов
• Существенное ускорение регрессионного (x10) тестирования IDS (веб-портал для докторов)
• Сокращение времени, которое тратится на разбор багов в Treat (3D редактор для разработки лечения)
- Выполнение тестов на ROCS2 стало в 55 раз быстрее • 2 секунд/тест вместо 110 секунд/тест на прежнем решении
- За счет увеличения скорости прогонов стало возможным тестирование дневных билдов
• Расширение тестирования на множество платформ для ClinCheck
14 © 2015 Align Technology, Inc. All rights reserved.
Куда идем
• 80% всех авто-тестов компании исполняются на платформе ROCS2
• Веб интерфейс к ROCS2 - Все тестировщики компании имеют единый интерфейс
работы с тестами
• «Продвинутый анализ» результатов тестирования- Единая платформа запуска тестов позволяет сделать
продвинутый статистический анализ
15 © 2015 Align Technology, Inc. All rights reserved.
Tips
• Любое кластерное решение требует существенных затрат на поддержку и администирование
• Если у вас несколько машин, обязательно вложитесь в систему мониторинга
• В настоящий момент доступно множество свободно-распространяемых компонентов, которые позволяют «собрать» необходимое решение не прибегая к масштабной разработке
16 © 2015 Align Technology, Inc. All rights reserved.
Вопросы