33
Scalable eCommerce Platform Solutions Scalable eCommerce Platform Solutions CI – Модное увлечение или новая класика? Игорь Яговой for

СI - модное увлечение или новая классика?

  • Upload
    sqalab

  • View
    608

  • Download
    0

Embed Size (px)

DESCRIPTION

Доклад Игоря Ягового на конференции SQA Days-12, 30 ноября-1 декабря, Минск

Citation preview

Page 1: СI - модное увлечение или новая классика?

Scalable eCommerce Platform Solutions

Scalable eCommerce Platform Solutions

CI – Модное увлечение или новая класика? Игорь Яговой

for

Page 2: СI - модное увлечение или новая классика?

Scalable eCommerce Platform Solutions

11/29/2012 2

• 8+ лет в IT

• Проекты: GameDev, Telecommunications, Financial, eBusiness, eCommerce

• Работал: Тестировщиком, Ведущим инженером, Менеджером

Игорь Яговой

Page 3: СI - модное увлечение или новая классика?

Scalable eCommerce Platform Solutions

11/29/2012 3

• Введение

• Простейший CI pipeline

• Реализация части тестирования

• Результат

План

Page 4: СI - модное увлечение или новая классика?

Scalable eCommerce Platform Solutions

11/29/2012 4

Continuous Integration

• Показывает статус билда/кода в любой момент

• Стимулирует стабилизацию кода

• Следит за регрессией

• Упрощает жизнь, отвечает на многие вопросы

• Demo – легко!

CI - что это такое и зачем?

Page 5: СI - модное увлечение или новая классика?

Scalable eCommerce Platform Solutions

11/29/2012 5

CI pipeline для одного компонента

Build

Deploy Smoke Test

Suite Artifact

Repository

Full Test Suite

Report

Commit

Page 6: СI - модное увлечение или новая классика?

Scalable eCommerce Platform Solutions

11/29/2012 6

Усложняем задачу

A build

B build

C build

A tests

B tests

C tests

A+B tests

A+B+C tests

Page 7: СI - модное увлечение или новая классика?

Scalable eCommerce Platform Solutions

11/29/2012 7

• Готовность команды проекта (Dev/QA, PM)

• Наличие железа / cloud

• Инфраструктура

• Интеграция с другими процессами

• Наличие DevOps

Continuous Integration - реализация

Page 8: СI - модное увлечение или новая классика?

Scalable eCommerce Platform Solutions

11/29/2012 8

• Работа над тестовым фреймворком

• Организация тестовых джоб на CI

• Какие тесты запускаем

• CI Support

Вклад QA в Continuous Integration

Page 9: СI - модное увлечение или новая классика?

Scalable eCommerce Platform Solutions

11/29/2012 9

Test Framework

Page 10: СI - модное увлечение или новая классика?

Scalable eCommerce Platform Solutions

11/30/2012 10

1. Запускается на CI

Test Framework

Page 11: СI - модное увлечение или новая классика?

Scalable eCommerce Platform Solutions

11/30/2012 11

1. Запускается на CI

2. Параметризация – где, куда?

Test Framework

Page 12: СI - модное увлечение или новая классика?

Scalable eCommerce Platform Solutions

11/30/2012 12

1. Запускается на CI

2. Параметризация – где, куда?

3. Поддержка различных suite, test groups

Test Framework

Page 13: СI - модное увлечение или новая классика?

Scalable eCommerce Platform Solutions

11/30/2012 13

1. Запускается на CI

2. Параметризация – где, куда?

3. Поддержка различных suite, test groups

4. Легкий тест-менеджмент, организация suite

Test Framework

Page 14: СI - модное увлечение или новая классика?

Scalable eCommerce Platform Solutions

11/30/2012 14

1. Запускается на CI

2. Параметризация – где, куда?

3. Поддержка различных suite, test groups

4. Легкий тест-менеджмент, организация suite

5. Читаемый репорт/Детальный репорт/логи

Test Framework

Page 15: СI - модное увлечение или новая классика?

Scalable eCommerce Platform Solutions

11/30/2012 15

1. Запускается на CI

2. Параметризация – где, куда?

3. Поддержка различных suite, test groups

4. Легкий тест-менеджмент, организация suite

5. Читаемый репорт/Детальный репорт/логи

6. Легко дебажить

Test Framework

Page 16: СI - модное увлечение или новая классика?

Scalable eCommerce Platform Solutions

11/30/2012 16

1. Запускается на CI

2. Параметризация – где, куда?

3. Поддержка различных suite, test groups

4. Легкий тест-менеджмент, организация suite

5. Читаемый репорт/Детальный репорт/логи

6. Легко дебажить

7. Параллелизация

Test Framework

Page 17: СI - модное увлечение или новая классика?

Scalable eCommerce Platform Solutions

11/30/2012 17

1. Запускается на CI

2. Параметризация – где, куда?

3. Поддержка различных suite, test groups

4. Легкий тест-менеджмент, организация suite

5. Читаемый репорт/Детальный репорт/логи

6. Легко дебажить

7. Параллелизация

8. Mapping Test <-> Defect

Test Framework

Page 18: СI - модное увлечение или новая классика?

Scalable eCommerce Platform Solutions

11/29/2012 18

Лампочка - 2 статуса мало, принцип светофора

Test Jobs: Практики

Page 19: СI - модное увлечение или новая классика?

Scalable eCommerce Platform Solutions

11/29/2012 19

Джобы запускают 1 suite

Hint: Environment может не убиваться после

Test Jobs: Практики

failed тестов

Page 20: СI - модное увлечение или новая классика?

Scalable eCommerce Platform Solutions

11/29/2012 20

Ускоряем прогон тестов

– тесты делятся на логические группы

– тестовые джобы запускаются параллельно

– smoke тесты тоже параллелятся

* Не забудь настроить правильные зависимости

Test Jobs: Параллелизация

Page 21: СI - модное увлечение или новая классика?

Scalable eCommerce Platform Solutions

11/29/2012 21

Test Jobs: Пример

Commit to A

build A

Smoke A+stub B

Commit to B

build B

Smoke

Full suite

Smoke Int with A

Full Int with A

Nexus

Smoke A+B

Nexus? Nexus

Full suite A+stub B

Full suite A+B

Type 1

Full suite A+B

Type 2

Report

Promote Promote?

Report

Page 22: СI - модное увлечение или новая классика?

Scalable eCommerce Platform Solutions

11/29/2012 22

У Нас свой артефакт!

• Тесты

• Зависимости - API, Stubs etc.

• Test Data

• Tools

Какие тесты запускать?

Page 23: СI - модное увлечение или новая классика?

Scalable eCommerce Platform Solutions

11/29/2012 23

Tests CI

Build

Promote

Commit

Artifact Repository

Page 24: СI - модное увлечение или новая классика?

Scalable eCommerce Platform Solutions

11/29/2012 24

Tests CI: Добавляем новый тест

• Тест Passed – Отлично!

• Тест Failed – Отлично! Заведи дефект!

Page 25: СI - модное увлечение или новая классика?

Scalable eCommerce Platform Solutions

11/29/2012 25

• Какого цвета лампочка?

• Держать актуальным Тест Артефакт

CI Support: Что же это?

Page 26: СI - модное увлечение или новая классика?

Scalable eCommerce Platform Solutions

11/29/2012 26

• Ошибка в тесте

• Тест не актуальный

• Bug!

Solution:

• Удалять тесты с CI можно!

• Mapping: Test <-> Defect – Must Have

CI Support : Красная лампочка

Page 27: СI - модное увлечение или новая классика?

Scalable eCommerce Platform Solutions

11/29/2012 27

Держи актуальными:

• Тесты и Тестовые наборы

• Зависимости (API, Stub, etc.)

• Тестовые данные

CI Support : Тест Артефакт

Page 28: СI - модное увлечение или новая классика?

Scalable eCommerce Platform Solutions

11/29/2012 28

• CI дежурный - plugin наш выбор:

CI Support : Дежурный

Page 29: СI - модное увлечение или новая классика?

Scalable eCommerce Platform Solutions

11/29/2012 29

CI Support : Дежурный

Page 30: СI - модное увлечение или новая классика?

Scalable eCommerce Platform Solutions

11/29/2012 30

Команда тестирования:

• Stop Execution

• Занимайся своей работой

• СI – эталонный энвайронмент

• Дефекты - находим и фиксим

• Трекаем только Epic дефекты

Бенефиты

Page 31: СI - модное увлечение или новая классика?

Scalable eCommerce Platform Solutions

11/29/2012 31

Команда разработчиков:

• Commit = Feedback

• Нет регрессии

• Дефект debug – легко!

• Тестирование происходит реально вместе с разработкой

Бенефиты

Page 32: СI - модное увлечение или новая классика?

Scalable eCommerce Platform Solutions

11/29/2012 32

Менеджер:

• Мгновенный статус билда/проекта

• Красивый репорт!

• Дефекты находятся раньше

• Исправлять ошибки сравнительно дешево

• Только minor дефекты живут после конца итерации

Бенефиты

Page 33: СI - модное увлечение или новая классика?

Scalable eCommerce Platform Solutions

Вопросы?

11/29/2012 33