Top Banner
© 2013 Align Technology, Inc. All rights reserved. © 2015 Align Technology, Inc. All rights reserved. ROCS2 Advanced platform for automated test execution in clustered environments 28.07.2015 Константин Мельников
16

ROCS 2 - advanced platform for automated test execution in clustered environments

Aug 13, 2015

Download

Technology

Rina Uzhevko
Welcome message from author
This document is posted to help you gain knowledge. Please leave a comment to let me know what you think about it! Share it to your friends and learn new things together.
Transcript
Page 1: ROCS 2 - advanced platform for automated test execution in clustered environments

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

Константин Мельников

Page 2: ROCS 2 - advanced platform for automated test execution in clustered environments

2 © 2015 Align Technology, Inc. All rights reserved.

Align Technology

• Align Technology, Inc – лидер в области “невидимой ортодонтии”.

• альтернатива брекетам

• на рынке с 1999г.

• Мы помогаем людям улыбаться больше и таким образом делаем людей счастливее (> 3M пациентов)

• Размер R&D: ~250 человек (100+ Москва)

• Сайт компании - www.aligntech.com

Page 3: ROCS 2 - advanced platform for automated test execution in clustered environments

3 © 2015 Align Technology, Inc. All rights reserved.

Проекты Align

• IDS- Портал для работы с докторами

• ClinCheck - Приложение для работы с предложенным курсом лечения

• Treat - 3D редактор для разработки курса лечения

• MAT- Серверная часть для обслуживания сканеров

• Множество вспомогательных инструментов в технологии производства

Page 4: ROCS 2 - advanced platform for automated test execution in clustered environments

4 © 2015 Align Technology, Inc. All rights reserved.

Основные сложности тестирования в Align

• Много продуктов- Тесты написаны с использованием различных технологий

- Запускаются на различных машинах

• Много тяжелых тестов (e2e)

• Особые требования к покрытию тестами всех бизнес требований (traceability)

Page 5: ROCS 2 - advanced platform for automated test execution in clustered environments

5 © 2015 Align Technology, Inc. All rights reserved.

Основные сложности тестирования в Align - развитие

• Команды стали - создавать различные фреймворки для тестирования

- Использовать разные способы кластеризации

• Как следствие- Стало уходить много времени на поддержку различных

решений

- Многие проблемы решались множество раз в разных местах

Page 6: ROCS 2 - advanced platform for automated test execution in clustered environments

6 © 2015 Align Technology, Inc. All rights reserved.

Прежние решения?

• Большинство решений поддерживали только один тип тестов (Selenium Grid, QTP, private scripts, etc.)

• Отсутствовала поддержка для разнообразия nodes в кластерах (Windows, Linux, Mac OS)

• Ограниченная параллелизации тестировочных процессов

Page 7: ROCS 2 - advanced platform for automated test execution in clustered environments

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

Page 8: ROCS 2 - advanced platform for automated test execution in clustered environments

8 © 2015 Align Technology, Inc. All rights reserved.

Платформа – ROCS 2

• Различные типы nodes- Linux и Windows

- Различный софт может быть установлен на разные машины

• Поддержка продвинутого параллелизма

• Возможность запускать различные виды тестов

• Поддержка интеграции с другими системами (Bamboo)

Page 9: ROCS 2 - advanced platform for automated test execution in clustered environments

9 © 2015 Align Technology, Inc. All rights reserved.

Команда и процесс

• Мультифункциональная мини команда из 2 человек

• Поддерживаем тестирование 4 продуктов

• Используем SCRUM- Итеративная разработка

- Частые обновления кластеров (еженедельные и чаще)

Page 10: ROCS 2 - advanced platform for automated test execution in clustered environments

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

Page 11: ROCS 2 - advanced platform for automated test execution in clustered environments

11 © 2015 Align Technology, Inc. All rights reserved.

Взгляд со стороны IT

• SJ кластер на 50 машин (IDS, MAT, CC)

• MSK кластер на 150 машин (Treat)

Page 12: ROCS 2 - advanced platform for automated test execution in clustered environments

12 © 2015 Align Technology, Inc. All rights reserved.

Компоненты

• Использован подход микро-сервисов в архитектуре

• Python + RabbitMQ + PostgreSQL + MongoDB

Page 13: ROCS 2 - advanced platform for automated test execution in clustered environments

13 © 2015 Align Technology, Inc. All rights reserved.

Чего достигли

• Тестируем чаще и больше: Июль 2014 – 17 000 тестов, Июнь 2015 – 413 000 тестов

• Существенное ускорение регрессионного (x10) тестирования IDS (веб-портал для докторов)

• Сокращение времени, которое тратится на разбор багов в Treat (3D редактор для разработки лечения)

- Выполнение тестов на ROCS2 стало в 55 раз быстрее • 2 секунд/тест вместо 110 секунд/тест на прежнем решении

- За счет увеличения скорости прогонов стало возможным тестирование дневных билдов

• Расширение тестирования на множество платформ для ClinCheck

Page 14: ROCS 2 - advanced platform for automated test execution in clustered environments

14 © 2015 Align Technology, Inc. All rights reserved.

Куда идем

• 80% всех авто-тестов компании исполняются на платформе ROCS2

• Веб интерфейс к ROCS2 - Все тестировщики компании имеют единый интерфейс

работы с тестами

• «Продвинутый анализ» результатов тестирования- Единая платформа запуска тестов позволяет сделать

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

Page 15: ROCS 2 - advanced platform for automated test execution in clustered environments

15 © 2015 Align Technology, Inc. All rights reserved.

Tips

• Любое кластерное решение требует существенных затрат на поддержку и администирование

• Если у вас несколько машин, обязательно вложитесь в систему мониторинга

• В настоящий момент доступно множество свободно-распространяемых компонентов, которые позволяют «собрать» необходимое решение не прибегая к масштабной разработке

Page 16: ROCS 2 - advanced platform for automated test execution in clustered environments

16 © 2015 Align Technology, Inc. All rights reserved.

Вопросы