ݺߣ

ݺߣShare a Scribd company logo
Игорь Хрол Автоматизация тестирования на крупных проектах
План Что есть крупный проект? Типичные проблемы Варианты решения Обо всём понемногу
План Что есть крупный проект? Типичные проблемы Варианты решения Обо всём понемногу
Что есть «крупный проект» в автоматизации тестирования? Более 1-2 человеко-лет разработки тестов
Что есть «крупный проект» в автоматизации тестирования? Более 1-2 человеко-лет разработки тестов Выделенная команда, занимающаяся автоматизацией тестирования
Что есть «крупный проект» в автоматизации тестирования? Более 1-2 человеко-лет разработки тестов Выделенная команда, занимающаяся автоматизацией тестирования Появляются проблемы с масштабированием, поддержкой, запусками и так далее...
Проблемы Тестов слишком много
Проблемы -Тестов слишком много Тесты не успевают отработать за 1-2 часа
Проблемы -Тестов слишком много Тесты не успеваютотработатьза 1-2 часа Решение - запускать их на ночь
Проблемы -Тестов слишком много Тесты не успеваютотработатьза ночь
Проблемы -Тестов слишком много Тесты не успеваютотработатьза ночь Решение - распараллеливание
Проблемы с распараллеливанием Требуется больше серверов
Проблемы с распараллеливанием Требуется больше серверов Тесты начинают конфликтовать между собой
Проблемы с распараллеливанием Требуется больше серверов Тесты начинают конфликтовать между собой Одно из решений  - использование нескольких тестовых стендов
Проблемы -Тестов слишком много Тесты не успеваютотработатьза сутки
Проблемы -Тестов слишком много Тесты не успеваютотработатьза сутки Решение - запуск на выходные
Проблемы -Тестов слишком много Тесты не успеваютотработатьза выходные Еще решения...
Проблемы -Тестов слишком много Тесты не успеваютотработатьза выходные Еще решения... Группировка тестов по приоритетам
Проблемы -Тестов слишком много Тесты не успеваютотработатьза выходные Еще решения... Группировка тестов по приоритетам Запуск тестов на самых "быстрых" окружениях
Проблемы -Тестов слишком много Тесты не успеваютотработатьза выходные Еще решения... Группировка тестов по приоритетам Запуск тестов на самых "быстрых" окружениях Использование заранее подготовленных данных
Проблемы -Тестов слишком много Тесты не успеваютотработатьза выходные Еще решения... Группировка тестов по приоритетам Запуск тестов на самых "быстрых" окружениях Интеграция с BackEnd ( отдельный слайд ) Использование заранее подготовленных данных
Интеграция с Back End API
Интеграция с Back End API В теории: Должно работать для Ruby-on-Rails ASP.NET + IronRuby (IronPython)
Большие объёмы поддержки Решения проблемы:
Большие объёмы поддержки Решения проблемы: общий фреймворк: исправления одних людей могут ре-использоваться другими исправления происходят в одном месте
Большие объёмы поддержки Решения проблемы: общий фреймворк: исправления одних людей могут ре-использоваться другими исправления происходят в одном месте эффективный фреймворк для минимизации дублирования кода
Большие объёмы поддержки Решения проблемы: общий фреймворк: исправления одних людей могут ре-использоваться другими исправления происходят в одном месте эффективный фреймворк для минимизации дублирования кода максимально частые запуски тестов
Большие объёмы поддержки Решения проблемы: общий фреймворк: исправления одних людей могут ре-использоваться другими исправления происходят в одном месте эффективный фреймворк для минимизации дублирования кода максимально частые запуски тестов эффективные инструменты по автоматизации (QTP vs Selenium)
Стабильная инфраструктура
Стабильная инфраструктура Выключать автоматическое обновление windows-серверов
Стабильная инфраструктура Выключать автоматическое обновление windows-серверов Использовать фиксированные пароли
Стабильная инфраструктура Выключать автоматическое обновление windows-серверов Использовать фиксированные пароли Шаблоны виртуальных машин
Стабильная инфраструктура Выключать автоматическое обновление windows-серверов Использовать фиксированные пароли Шаблоны виртуальных машин Скрипты для установки переменных окружения
Стабильная инфраструктура Выключать автоматическое обновление windows-серверов Использовать фиксированные пароли Шаблоны виртуальных машин Скрипты для установки переменных окружения Запланированные maintenance активности
Работа многих людей одновременно Возникающие проблемы: Каждый может что-то поломать Не все могут быть "в курсе" изменений Требуется синхронизация разных работ
Каждый может что-то поломать Решение: Continious Integration
Каждый может что-то поломать Решение: Continious Integration Hudson, CruiseControl, Bamboo... Проводится только компиляция тестов Письмо виноватому и начальству в случае поломки
Не все могут быть "в курсе" изменений Варианты решения: Общий чат E-mail рассылки Регулярные статусные митинги
Не все могут быть "в курсе" изменений Варианты решения: Общий чат E-mail рассылки Регулярные статусные митинги Больше общайтесь! :)
Разделение на подкоманды Синхронизация разных работ
Работа с несколькими codeline
Проблемы синхронизации всё-таки возникают Нужно всем вместе установить новую сборку приложения Требуется сделать следующий branch Меняем текущий поддерживаемый браузер и т д
Стабильные тесты Основной показатель - Success Rate
Стабильные тесты Основной показатель - Success Rate Какой результат достижим для UI тестов (от 0% до 100%)?
Стабильные тесты Основной показатель - Success Rate Какой результат достижим для UI тестов (от 0% до 100%)? Наш целевой показатель - 97%
Стабильные тесты Основной показатель - Success Rate Какой результат достижим для UI тестов (от 0% до 100%)? Наш целевой показатель - 97% Отдельный проект в Bug Tracking системе для быстрого реагирования на запросы (а также контроль качества)
Стабильные тесты Основной показатель - Success Rate Какой результат достижим для UI тестов (от 0% до 100%)? Наш целевой показатель - 97% Отдельный проект в Bug Tracking системе для быстрого реагирования на запросы (а также контроль качества) Какие из тестов стабильнее? нет дефектов в Bug Tracking'е регулярно заносятся дефекты
Инфраструктура для запуска тестов Возможность запуска тестов всем заинтересованным людям Централизованное хранилище результатов Создание пула машин для выполения тестов
Инфраструктура для запуска тестов Возможность запуска тестов всем заинтересованным людям Централизованное хранилище результатов Создание пула машин для выполения тестов Предстоит сделать...
Вопросы
Автоматизация тестирования на крупных проектах
Автоматизация тестирования на крупных проектах
Автоматизация тестирования на крупных проектах
Автоматизация тестирования на крупных проектах

More Related Content

What's hot (20)

DevOps подходы в инфраструктуре автоматизации тестирования
DevOps подходы в инфраструктуре автоматизации тестированияDevOps подходы в инфраструктуре автоматизации тестирования
DevOps подходы в инфраструктуре автоматизации тестирования
SQALab
ROCS 2 - advanced platform for automated test execution in clustered environm...
ROCS 2 - advanced platform for automated test execution in clustered environm...ROCS 2 - advanced platform for automated test execution in clustered environm...
ROCS 2 - advanced platform for automated test execution in clustered environm...
Rina Uzhevko
Что ждет тестировщиков при организации процесса тестирования Enterprise-проду...
Что ждет тестировщиков при организации процесса тестирования Enterprise-проду...Что ждет тестировщиков при организации процесса тестирования Enterprise-проду...
Что ждет тестировщиков при организации процесса тестирования Enterprise-проду...
SQALab
Ошибки начинающего специалиста по нагрузочному тестированию и как их избежать
Ошибки начинающего специалиста по нагрузочному тестированию и как их избежатьОшибки начинающего специалиста по нагрузочному тестированию и как их избежать
Ошибки начинающего специалиста по нагрузочному тестированию и как их избежать
SQALab
Тестирование слоёного пирога
Тестирование слоёного пирогаТестирование слоёного пирога
Тестирование слоёного пирога
SQALab
Тестируем производительность с помощью Selenium
Тестируем производительность с помощью SeleniumТестируем производительность с помощью Selenium
Тестируем производительность с помощью Selenium
SQALab
Внедрение автоматизации тестирования на Сервисной Шине
Внедрение автоматизации тестирования на Сервисной ШинеВнедрение автоматизации тестирования на Сервисной Шине
Внедрение автоматизации тестирования на Сервисной Шине
SQALab
Что DevOps должен знать про статический анализ кода?
Что DevOps должен знать про статический анализ кода?Что DevOps должен знать про статический анализ кода?
Что DevOps должен знать про статический анализ кода?
Andrey Karpov
Эволюция нагрузочного тестирования – от простой автоматизации до BDD
Эволюция нагрузочного тестирования – от простой автоматизации до BDDЭволюция нагрузочного тестирования – от простой автоматизации до BDD
Эволюция нагрузочного тестирования – от простой автоматизации до BDD
CEE-SEC(R)
Как аналитика помогает тестировщику
Как аналитика помогает тестировщикуКак аналитика помогает тестировщику
Как аналитика помогает тестировщику
SQALab
Badger — инструмент для мониторинга качества продуктов
Badger — инструмент для мониторинга качества продуктовBadger — инструмент для мониторинга качества продуктов
Badger — инструмент для мониторинга качества продуктов
SQALab
Становление процесса автоматизированного тестирования в интернет-магазине ОКЕЙ
Становление процесса автоматизированного тестирования в интернет-магазине ОКЕЙСтановление процесса автоматизированного тестирования в интернет-магазине ОКЕЙ
Становление процесса автоматизированного тестирования в интернет-магазине ОКЕЙ
CEE-SEC(R)
Настраиваемое тестирование производительности
Настраиваемое тестирование производительностиНастраиваемое тестирование производительности
Настраиваемое тестирование производительности
SQALab
Шаблоны проектирования нагрузочных скриптов
Шаблоны проектирования нагрузочных скриптовШаблоны проектирования нагрузочных скриптов
Шаблоны проектирования нагрузочных скриптов
SQALab
SQADAYS 21 Москва 2017
SQADAYS 21 Москва 2017SQADAYS 21 Москва 2017
SQADAYS 21 Москва 2017
Adam Sandman
Как Cluster Membership Software может помочь QA
Как Cluster Membership Software может помочь QAКак Cluster Membership Software может помочь QA
Как Cluster Membership Software может помочь QA
SQALab
Переписать нельзя рефакторить
Переписать нельзя рефакторитьПереписать нельзя рефакторить
Переписать нельзя рефакторить
CEE-SEC(R)
Test Strategy: creation and optimization - QA Fest-2017 (Тестовая стратегия: ...
Test Strategy: creation and optimization - QA Fest-2017 (Тестовая стратегия: ...Test Strategy: creation and optimization - QA Fest-2017 (Тестовая стратегия: ...
Test Strategy: creation and optimization - QA Fest-2017 (Тестовая стратегия: ...
Andrey Ladutko
Использование игровой модели для выполнения сложных сценарных тестов
Использование игровой модели для выполнения сложных сценарных тестовИспользование игровой модели для выполнения сложных сценарных тестов
Использование игровой модели для выполнения сложных сценарных тестов
SQALab
QA Fes 2016. Анастасия Асеева. Роль тестирования в Devops
QA Fes 2016. Анастасия Асеева. Роль тестирования в DevopsQA Fes 2016. Анастасия Асеева. Роль тестирования в Devops
QA Fes 2016. Анастасия Асеева. Роль тестирования в Devops
QAFest
DevOps подходы в инфраструктуре автоматизации тестирования
DevOps подходы в инфраструктуре автоматизации тестированияDevOps подходы в инфраструктуре автоматизации тестирования
DevOps подходы в инфраструктуре автоматизации тестирования
SQALab
ROCS 2 - advanced platform for automated test execution in clustered environm...
ROCS 2 - advanced platform for automated test execution in clustered environm...ROCS 2 - advanced platform for automated test execution in clustered environm...
ROCS 2 - advanced platform for automated test execution in clustered environm...
Rina Uzhevko
Что ждет тестировщиков при организации процесса тестирования Enterprise-проду...
Что ждет тестировщиков при организации процесса тестирования Enterprise-проду...Что ждет тестировщиков при организации процесса тестирования Enterprise-проду...
Что ждет тестировщиков при организации процесса тестирования Enterprise-проду...
SQALab
Ошибки начинающего специалиста по нагрузочному тестированию и как их избежать
Ошибки начинающего специалиста по нагрузочному тестированию и как их избежатьОшибки начинающего специалиста по нагрузочному тестированию и как их избежать
Ошибки начинающего специалиста по нагрузочному тестированию и как их избежать
SQALab
Тестирование слоёного пирога
Тестирование слоёного пирогаТестирование слоёного пирога
Тестирование слоёного пирога
SQALab
Тестируем производительность с помощью Selenium
Тестируем производительность с помощью SeleniumТестируем производительность с помощью Selenium
Тестируем производительность с помощью Selenium
SQALab
Внедрение автоматизации тестирования на Сервисной Шине
Внедрение автоматизации тестирования на Сервисной ШинеВнедрение автоматизации тестирования на Сервисной Шине
Внедрение автоматизации тестирования на Сервисной Шине
SQALab
Что DevOps должен знать про статический анализ кода?
Что DevOps должен знать про статический анализ кода?Что DevOps должен знать про статический анализ кода?
Что DevOps должен знать про статический анализ кода?
Andrey Karpov
Эволюция нагрузочного тестирования – от простой автоматизации до BDD
Эволюция нагрузочного тестирования – от простой автоматизации до BDDЭволюция нагрузочного тестирования – от простой автоматизации до BDD
Эволюция нагрузочного тестирования – от простой автоматизации до BDD
CEE-SEC(R)
Как аналитика помогает тестировщику
Как аналитика помогает тестировщикуКак аналитика помогает тестировщику
Как аналитика помогает тестировщику
SQALab
Badger — инструмент для мониторинга качества продуктов
Badger — инструмент для мониторинга качества продуктовBadger — инструмент для мониторинга качества продуктов
Badger — инструмент для мониторинга качества продуктов
SQALab
Становление процесса автоматизированного тестирования в интернет-магазине ОКЕЙ
Становление процесса автоматизированного тестирования в интернет-магазине ОКЕЙСтановление процесса автоматизированного тестирования в интернет-магазине ОКЕЙ
Становление процесса автоматизированного тестирования в интернет-магазине ОКЕЙ
CEE-SEC(R)
Настраиваемое тестирование производительности
Настраиваемое тестирование производительностиНастраиваемое тестирование производительности
Настраиваемое тестирование производительности
SQALab
Шаблоны проектирования нагрузочных скриптов
Шаблоны проектирования нагрузочных скриптовШаблоны проектирования нагрузочных скриптов
Шаблоны проектирования нагрузочных скриптов
SQALab
SQADAYS 21 Москва 2017
SQADAYS 21 Москва 2017SQADAYS 21 Москва 2017
SQADAYS 21 Москва 2017
Adam Sandman
Как Cluster Membership Software может помочь QA
Как Cluster Membership Software может помочь QAКак Cluster Membership Software может помочь QA
Как Cluster Membership Software может помочь QA
SQALab
Переписать нельзя рефакторить
Переписать нельзя рефакторитьПереписать нельзя рефакторить
Переписать нельзя рефакторить
CEE-SEC(R)
Test Strategy: creation and optimization - QA Fest-2017 (Тестовая стратегия: ...
Test Strategy: creation and optimization - QA Fest-2017 (Тестовая стратегия: ...Test Strategy: creation and optimization - QA Fest-2017 (Тестовая стратегия: ...
Test Strategy: creation and optimization - QA Fest-2017 (Тестовая стратегия: ...
Andrey Ladutko
Использование игровой модели для выполнения сложных сценарных тестов
Использование игровой модели для выполнения сложных сценарных тестовИспользование игровой модели для выполнения сложных сценарных тестов
Использование игровой модели для выполнения сложных сценарных тестов
SQALab
QA Fes 2016. Анастасия Асеева. Роль тестирования в Devops
QA Fes 2016. Анастасия Асеева. Роль тестирования в DevopsQA Fes 2016. Анастасия Асеева. Роль тестирования в Devops
QA Fes 2016. Анастасия Асеева. Роль тестирования в Devops
QAFest

Viewers also liked (20)

Write code for browsers with Scala
Write code for browsers with ScalaWrite code for browsers with Scala
Write code for browsers with Scala
Gleb Kanterov
GithubFlow. Тестировщики против тестирования.
GithubFlow. Тестировщики против тестирования.GithubFlow. Тестировщики против тестирования.
GithubFlow. Тестировщики против тестирования.
Tatyana Pischasova
Agile.by Gathering – 23 января 2016
Agile.by Gathering – 23 января 2016Agile.by Gathering – 23 января 2016
Agile.by Gathering – 23 января 2016
Igor Khrol
Recruiting. Advanced level
Recruiting. Advanced levelRecruiting. Advanced level
Recruiting. Advanced level
Marina Khomich
PyCon Ukraine 2014
PyCon Ukraine 2014PyCon Ukraine 2014
PyCon Ukraine 2014
Andrii Soldatenko
Cовременный контроль качества: давай сделаем это по-быстрому...
Cовременный контроль качества: давай сделаем это по-быстрому...Cовременный контроль качества: давай сделаем это по-быстрому...
Cовременный контроль качества: давай сделаем это по-быстрому...
Igor Khrol
SeleniumCamp 2016
SeleniumCamp 2016SeleniumCamp 2016
SeleniumCamp 2016
Igor Khrol
Web driver история одной миграции
Web driver   история одной миграцииWeb driver   история одной миграции
Web driver история одной миграции
Igor Khrol
автоматизация Flex приложений с помощью selenium rc
автоматизация Flex приложений с помощью selenium rcавтоматизация Flex приложений с помощью selenium rc
автоматизация Flex приложений с помощью selenium rc
Igor Khrol
Повышаем надёжность тестов через JavaScript
Повышаем надёжность тестов через JavaScriptПовышаем надёжность тестов через JavaScript
Повышаем надёжность тестов через JavaScript
Igor Khrol
Agile Testing in Enterprise: Way to transform - SQA Days 2014
Agile Testing in Enterprise: Way to transform - SQA Days 2014Agile Testing in Enterprise: Way to transform - SQA Days 2014
Agile Testing in Enterprise: Way to transform - SQA Days 2014
Andrey Rebrov
Webium: Page Objects In Python (Eng)
Webium: Page Objects In Python (Eng)Webium: Page Objects In Python (Eng)
Webium: Page Objects In Python (Eng)
Uladzimir Franskevich
Автоматизация тестирования: доступна каждому или удел избранных?
Автоматизация тестирования: доступна каждому или удел избранных?Автоматизация тестирования: доступна каждому или удел избранных?
Автоматизация тестирования: доступна каждому или удел избранных?
SQALab
Good test = simple test (with selenide)
Good test = simple test (with selenide)Good test = simple test (with selenide)
Good test = simple test (with selenide)
Andrei Solntsev
Qa Automation - отбрасываем лишнее и тестируем суть
Qa Automation - отбрасываем лишнее и тестируем сутьQa Automation - отбрасываем лишнее и тестируем суть
Qa Automation - отбрасываем лишнее и тестируем суть
Igor Khrol
Типичные ошибки начинающих писать тесты на WebDriver
Типичные ошибки начинающих писать тесты на WebDriverТипичные ошибки начинающих писать тесты на WebDriver
Типичные ошибки начинающих писать тесты на WebDriver
Igor Khrol
Концепция QaAPI: взгляд на тестирование с другой стороны баррикад
Концепция QaAPI: взгляд на тестирование с другой стороны баррикадКонцепция QaAPI: взгляд на тестирование с другой стороны баррикад
Концепция QaAPI: взгляд на тестирование с другой стороны баррикад
SQALab
Автоматизация тестирования: отбрасываем лишнее и проверяем суть
Автоматизация тестирования: отбрасываем лишнее и проверяем сутьАвтоматизация тестирования: отбрасываем лишнее и проверяем суть
Автоматизация тестирования: отбрасываем лишнее и проверяем суть
SQALab
Test Automation Wargaming SQA Days 17
Test Automation Wargaming SQA Days 17Test Automation Wargaming SQA Days 17
Test Automation Wargaming SQA Days 17
Igor Khrol
Webium: Page Objects in Python
Webium: Page Objects in PythonWebium: Page Objects in Python
Webium: Page Objects in Python
Igor Khrol
Write code for browsers with Scala
Write code for browsers with ScalaWrite code for browsers with Scala
Write code for browsers with Scala
Gleb Kanterov
GithubFlow. Тестировщики против тестирования.
GithubFlow. Тестировщики против тестирования.GithubFlow. Тестировщики против тестирования.
GithubFlow. Тестировщики против тестирования.
Tatyana Pischasova
Agile.by Gathering – 23 января 2016
Agile.by Gathering – 23 января 2016Agile.by Gathering – 23 января 2016
Agile.by Gathering – 23 января 2016
Igor Khrol
Cовременный контроль качества: давай сделаем это по-быстрому...
Cовременный контроль качества: давай сделаем это по-быстрому...Cовременный контроль качества: давай сделаем это по-быстрому...
Cовременный контроль качества: давай сделаем это по-быстрому...
Igor Khrol
Web driver история одной миграции
Web driver   история одной миграцииWeb driver   история одной миграции
Web driver история одной миграции
Igor Khrol
автоматизация Flex приложений с помощью selenium rc
автоматизация Flex приложений с помощью selenium rcавтоматизация Flex приложений с помощью selenium rc
автоматизация Flex приложений с помощью selenium rc
Igor Khrol
Повышаем надёжность тестов через JavaScript
Повышаем надёжность тестов через JavaScriptПовышаем надёжность тестов через JavaScript
Повышаем надёжность тестов через JavaScript
Igor Khrol
Agile Testing in Enterprise: Way to transform - SQA Days 2014
Agile Testing in Enterprise: Way to transform - SQA Days 2014Agile Testing in Enterprise: Way to transform - SQA Days 2014
Agile Testing in Enterprise: Way to transform - SQA Days 2014
Andrey Rebrov
Автоматизация тестирования: доступна каждому или удел избранных?
Автоматизация тестирования: доступна каждому или удел избранных?Автоматизация тестирования: доступна каждому или удел избранных?
Автоматизация тестирования: доступна каждому или удел избранных?
SQALab
Good test = simple test (with selenide)
Good test = simple test (with selenide)Good test = simple test (with selenide)
Good test = simple test (with selenide)
Andrei Solntsev
Qa Automation - отбрасываем лишнее и тестируем суть
Qa Automation - отбрасываем лишнее и тестируем сутьQa Automation - отбрасываем лишнее и тестируем суть
Qa Automation - отбрасываем лишнее и тестируем суть
Igor Khrol
Типичные ошибки начинающих писать тесты на WebDriver
Типичные ошибки начинающих писать тесты на WebDriverТипичные ошибки начинающих писать тесты на WebDriver
Типичные ошибки начинающих писать тесты на WebDriver
Igor Khrol
Концепция QaAPI: взгляд на тестирование с другой стороны баррикад
Концепция QaAPI: взгляд на тестирование с другой стороны баррикадКонцепция QaAPI: взгляд на тестирование с другой стороны баррикад
Концепция QaAPI: взгляд на тестирование с другой стороны баррикад
SQALab
Автоматизация тестирования: отбрасываем лишнее и проверяем суть
Автоматизация тестирования: отбрасываем лишнее и проверяем сутьАвтоматизация тестирования: отбрасываем лишнее и проверяем суть
Автоматизация тестирования: отбрасываем лишнее и проверяем суть
SQALab
Test Automation Wargaming SQA Days 17
Test Automation Wargaming SQA Days 17Test Automation Wargaming SQA Days 17
Test Automation Wargaming SQA Days 17
Igor Khrol
Webium: Page Objects in Python
Webium: Page Objects in PythonWebium: Page Objects in Python
Webium: Page Objects in Python
Igor Khrol

Similar to Автоматизация тестирования на крупных проектах (20)

Разработка и сопровождении авто-тестов (Selenium)
Разработка и сопровождении авто-тестов (Selenium)Разработка и сопровождении авто-тестов (Selenium)
Разработка и сопровождении авто-тестов (Selenium)
Paul Stashevsky
организация и проведение тестирования
организация и проведение тестированияорганизация и проведение тестирования
организация и проведение тестирования
Igor Pozumentov
Стратегия тестирования крупного проекта в условиях Agile разработки v2
Стратегия тестирования крупного проекта в условиях Agile разработки v2Стратегия тестирования крупного проекта в условиях Agile разработки v2
Стратегия тестирования крупного проекта в условиях Agile разработки v2
Magneta AI
Организация тестового набора при автоматизированном функциональном тестировании
Организация тестового набора при автоматизированном функциональном тестированииОрганизация тестового набора при автоматизированном функциональном тестировании
Организация тестового набора при автоматизированном функциональном тестировании
SQALab
Светлана Федянина - Процесс тестирования в распределенной команде
Светлана Федянина - Процесс тестирования в распределенной командеСветлана Федянина - Процесс тестирования в распределенной команде
Светлана Федянина - Процесс тестирования в распределенной команде
SQALab
Процесс тестирования в распределенной команде
Процесс тестирования в распределенной командеПроцесс тестирования в распределенной команде
Процесс тестирования в распределенной команде
Svetlana Fedyanina
10M tests per day
10M tests per day10M tests per day
10M tests per day
Sergey Grinev
Parallelization of Selenium tests with .NET/C# + NUnit
Parallelization of Selenium tests with .NET/C# + NUnitParallelization of Selenium tests with .NET/C# + NUnit
Parallelization of Selenium tests with .NET/C# + NUnit
Станислав Волков
андрей дмитриев взгляд со стороны разработчика
андрей дмитриев взгляд со стороны разработчикаандрей дмитриев взгляд со стороны разработчика
андрей дмитриев взгляд со стороны разработчика
Alexei Lupan
Постановка процесса тестирования в Agile
Постановка процесса тестирования в AgileПостановка процесса тестирования в Agile
Постановка процесса тестирования в Agile
SQALab
Sef Streluk Agile
Sef Streluk AgileSef Streluk Agile
Sef Streluk Agile
sef2009
Автоматизация тестирования: почему умирают проекты?
Автоматизация тестирования: почему умирают проекты?Автоматизация тестирования: почему умирают проекты?
Автоматизация тестирования: почему умирают проекты?
SQALab
Автоматизация Тестирования - Почему умирают проекты?
Автоматизация Тестирования - Почему умирают проекты?Автоматизация Тестирования - Почему умирают проекты?
Автоматизация Тестирования - Почему умирают проекты?
Igor Khrol
Масло масляное или Тестируем тестирование
Масло масляное или Тестируем тестированиеМасло масляное или Тестируем тестирование
Масло масляное или Тестируем тестирование
2ГИС Технологии
Автоматизация сборки и тестирования в разрезе эффективного производства
Автоматизация сборки и тестирования в разрезе эффективного производстваАвтоматизация сборки и тестирования в разрезе эффективного производства
Автоматизация сборки и тестирования в разрезе эффективного производства
SQALab
Тестирование весна 2013 лекция 5
Тестирование весна 2013 лекция 5Тестирование весна 2013 лекция 5
Тестирование весна 2013 лекция 5
Technopark
Марина Широчкина - Тестирование
Марина Широчкина - ТестированиеМарина Широчкина - Тестирование
Марина Широчкина - Тестирование
Yandex
Иван Евтухович — Как перестать релизиться и начать жить
Иван Евтухович — Как перестать релизиться и начать житьИван Евтухович — Как перестать релизиться и начать жить
Иван Евтухович — Как перестать релизиться и начать жить
Daria Oreshkina
CodeFest 2010. Емелина Т. — Trial-and-error: как мы начинали тестировать
CodeFest 2010. Емелина Т. — Trial-and-error: как мы начинали тестироватьCodeFest 2010. Емелина Т. — Trial-and-error: как мы начинали тестировать
CodeFest 2010. Емелина Т. — Trial-and-error: как мы начинали тестировать
CodeFest
Эволюция экосистем тестирования
Эволюция экосистем тестированияЭволюция экосистем тестирования
Эволюция экосистем тестирования
Gleb Rybalko
Разработка и сопровождении авто-тестов (Selenium)
Разработка и сопровождении авто-тестов (Selenium)Разработка и сопровождении авто-тестов (Selenium)
Разработка и сопровождении авто-тестов (Selenium)
Paul Stashevsky
организация и проведение тестирования
организация и проведение тестированияорганизация и проведение тестирования
организация и проведение тестирования
Igor Pozumentov
Стратегия тестирования крупного проекта в условиях Agile разработки v2
Стратегия тестирования крупного проекта в условиях Agile разработки v2Стратегия тестирования крупного проекта в условиях Agile разработки v2
Стратегия тестирования крупного проекта в условиях Agile разработки v2
Magneta AI
Организация тестового набора при автоматизированном функциональном тестировании
Организация тестового набора при автоматизированном функциональном тестированииОрганизация тестового набора при автоматизированном функциональном тестировании
Организация тестового набора при автоматизированном функциональном тестировании
SQALab
Светлана Федянина - Процесс тестирования в распределенной команде
Светлана Федянина - Процесс тестирования в распределенной командеСветлана Федянина - Процесс тестирования в распределенной команде
Светлана Федянина - Процесс тестирования в распределенной команде
SQALab
Процесс тестирования в распределенной команде
Процесс тестирования в распределенной командеПроцесс тестирования в распределенной команде
Процесс тестирования в распределенной команде
Svetlana Fedyanina
андрей дмитриев взгляд со стороны разработчика
андрей дмитриев взгляд со стороны разработчикаандрей дмитриев взгляд со стороны разработчика
андрей дмитриев взгляд со стороны разработчика
Alexei Lupan
Постановка процесса тестирования в Agile
Постановка процесса тестирования в AgileПостановка процесса тестирования в Agile
Постановка процесса тестирования в Agile
SQALab
Sef Streluk Agile
Sef Streluk AgileSef Streluk Agile
Sef Streluk Agile
sef2009
Автоматизация тестирования: почему умирают проекты?
Автоматизация тестирования: почему умирают проекты?Автоматизация тестирования: почему умирают проекты?
Автоматизация тестирования: почему умирают проекты?
SQALab
Автоматизация Тестирования - Почему умирают проекты?
Автоматизация Тестирования - Почему умирают проекты?Автоматизация Тестирования - Почему умирают проекты?
Автоматизация Тестирования - Почему умирают проекты?
Igor Khrol
Масло масляное или Тестируем тестирование
Масло масляное или Тестируем тестированиеМасло масляное или Тестируем тестирование
Масло масляное или Тестируем тестирование
2ГИС Технологии
Автоматизация сборки и тестирования в разрезе эффективного производства
Автоматизация сборки и тестирования в разрезе эффективного производстваАвтоматизация сборки и тестирования в разрезе эффективного производства
Автоматизация сборки и тестирования в разрезе эффективного производства
SQALab
Тестирование весна 2013 лекция 5
Тестирование весна 2013 лекция 5Тестирование весна 2013 лекция 5
Тестирование весна 2013 лекция 5
Technopark
Марина Широчкина - Тестирование
Марина Широчкина - ТестированиеМарина Широчкина - Тестирование
Марина Широчкина - Тестирование
Yandex
Иван Евтухович — Как перестать релизиться и начать жить
Иван Евтухович — Как перестать релизиться и начать житьИван Евтухович — Как перестать релизиться и начать жить
Иван Евтухович — Как перестать релизиться и начать жить
Daria Oreshkina
CodeFest 2010. Емелина Т. — Trial-and-error: как мы начинали тестировать
CodeFest 2010. Емелина Т. — Trial-and-error: как мы начинали тестироватьCodeFest 2010. Емелина Т. — Trial-and-error: как мы начинали тестировать
CodeFest 2010. Емелина Т. — Trial-and-error: как мы начинали тестировать
CodeFest
Эволюция экосистем тестирования
Эволюция экосистем тестированияЭволюция экосистем тестирования
Эволюция экосистем тестирования
Gleb Rybalko

More from Igor Khrol (7)

Тестировщик в Agile - кто он?
Тестировщик в Agile - кто он?Тестировщик в Agile - кто он?
Тестировщик в Agile - кто он?
Igor Khrol
Grail - CodeFest'2015
Grail - CodeFest'2015Grail - CodeFest'2015
Grail - CodeFest'2015
Igor Khrol
Increase selenium tests stability via java script
Increase selenium tests stability via java scriptIncrease selenium tests stability via java script
Increase selenium tests stability via java script
Igor Khrol
Why test automation projects are failing
Why test automation projects are failingWhy test automation projects are failing
Why test automation projects are failing
Igor Khrol
“Можно ли перевернуть пирамиду?” – автоматизируем тестирование с меньшим числ...
“Можно ли перевернуть пирамиду?” – автоматизируем тестирование с меньшим числ...“Можно ли перевернуть пирамиду?” – автоматизируем тестирование с меньшим числ...
“Можно ли перевернуть пирамиду?” – автоматизируем тестирование с меньшим числ...
Igor Khrol
Meeting #4. Frameworks.
Meeting #4. Frameworks.Meeting #4. Frameworks.
Meeting #4. Frameworks.
Igor Khrol
Кому следует писать автоматические тесты?
Кому следует писать автоматические тесты?Кому следует писать автоматические тесты?
Кому следует писать автоматические тесты?
Igor Khrol
Тестировщик в Agile - кто он?
Тестировщик в Agile - кто он?Тестировщик в Agile - кто он?
Тестировщик в Agile - кто он?
Igor Khrol
Grail - CodeFest'2015
Grail - CodeFest'2015Grail - CodeFest'2015
Grail - CodeFest'2015
Igor Khrol
Increase selenium tests stability via java script
Increase selenium tests stability via java scriptIncrease selenium tests stability via java script
Increase selenium tests stability via java script
Igor Khrol
Why test automation projects are failing
Why test automation projects are failingWhy test automation projects are failing
Why test automation projects are failing
Igor Khrol
“Можно ли перевернуть пирамиду?” – автоматизируем тестирование с меньшим числ...
“Можно ли перевернуть пирамиду?” – автоматизируем тестирование с меньшим числ...“Можно ли перевернуть пирамиду?” – автоматизируем тестирование с меньшим числ...
“Можно ли перевернуть пирамиду?” – автоматизируем тестирование с меньшим числ...
Igor Khrol
Meeting #4. Frameworks.
Meeting #4. Frameworks.Meeting #4. Frameworks.
Meeting #4. Frameworks.
Igor Khrol
Кому следует писать автоматические тесты?
Кому следует писать автоматические тесты?Кому следует писать автоматические тесты?
Кому следует писать автоматические тесты?
Igor Khrol

Автоматизация тестирования на крупных проектах

  • 1. Игорь Хрол Автоматизация тестирования на крупных проектах
  • 2. План Что есть крупный проект? Типичные проблемы Варианты решения Обо всём понемногу
  • 3. План Что есть крупный проект? Типичные проблемы Варианты решения Обо всём понемногу
  • 4. Что есть «крупный проект» в автоматизации тестирования? Более 1-2 человеко-лет разработки тестов
  • 5. Что есть «крупный проект» в автоматизации тестирования? Более 1-2 человеко-лет разработки тестов Выделенная команда, занимающаяся автоматизацией тестирования
  • 6. Что есть «крупный проект» в автоматизации тестирования? Более 1-2 человеко-лет разработки тестов Выделенная команда, занимающаяся автоматизацией тестирования Появляются проблемы с масштабированием, поддержкой, запусками и так далее...
  • 8. Проблемы -Тестов слишком много Тесты не успевают отработать за 1-2 часа
  • 9. Проблемы -Тестов слишком много Тесты не успеваютотработатьза 1-2 часа Решение - запускать их на ночь
  • 10. Проблемы -Тестов слишком много Тесты не успеваютотработатьза ночь
  • 11. Проблемы -Тестов слишком много Тесты не успеваютотработатьза ночь Решение - распараллеливание
  • 12. Проблемы с распараллеливанием Требуется больше серверов
  • 13. Проблемы с распараллеливанием Требуется больше серверов Тесты начинают конфликтовать между собой
  • 14. Проблемы с распараллеливанием Требуется больше серверов Тесты начинают конфликтовать между собой Одно из решений - использование нескольких тестовых стендов
  • 15. Проблемы -Тестов слишком много Тесты не успеваютотработатьза сутки
  • 16. Проблемы -Тестов слишком много Тесты не успеваютотработатьза сутки Решение - запуск на выходные
  • 17. Проблемы -Тестов слишком много Тесты не успеваютотработатьза выходные Еще решения...
  • 18. Проблемы -Тестов слишком много Тесты не успеваютотработатьза выходные Еще решения... Группировка тестов по приоритетам
  • 19. Проблемы -Тестов слишком много Тесты не успеваютотработатьза выходные Еще решения... Группировка тестов по приоритетам Запуск тестов на самых "быстрых" окружениях
  • 20. Проблемы -Тестов слишком много Тесты не успеваютотработатьза выходные Еще решения... Группировка тестов по приоритетам Запуск тестов на самых "быстрых" окружениях Использование заранее подготовленных данных
  • 21. Проблемы -Тестов слишком много Тесты не успеваютотработатьза выходные Еще решения... Группировка тестов по приоритетам Запуск тестов на самых "быстрых" окружениях Интеграция с BackEnd ( отдельный слайд ) Использование заранее подготовленных данных
  • 23. Интеграция с Back End API В теории: Должно работать для Ruby-on-Rails ASP.NET + IronRuby (IronPython)
  • 24. Большие объёмы поддержки Решения проблемы:
  • 25. Большие объёмы поддержки Решения проблемы: общий фреймворк: исправления одних людей могут ре-использоваться другими исправления происходят в одном месте
  • 26. Большие объёмы поддержки Решения проблемы: общий фреймворк: исправления одних людей могут ре-использоваться другими исправления происходят в одном месте эффективный фреймворк для минимизации дублирования кода
  • 27. Большие объёмы поддержки Решения проблемы: общий фреймворк: исправления одних людей могут ре-использоваться другими исправления происходят в одном месте эффективный фреймворк для минимизации дублирования кода максимально частые запуски тестов
  • 28. Большие объёмы поддержки Решения проблемы: общий фреймворк: исправления одних людей могут ре-использоваться другими исправления происходят в одном месте эффективный фреймворк для минимизации дублирования кода максимально частые запуски тестов эффективные инструменты по автоматизации (QTP vs Selenium)
  • 30. Стабильная инфраструктура Выключать автоматическое обновление windows-серверов
  • 31. Стабильная инфраструктура Выключать автоматическое обновление windows-серверов Использовать фиксированные пароли
  • 32. Стабильная инфраструктура Выключать автоматическое обновление windows-серверов Использовать фиксированные пароли Шаблоны виртуальных машин
  • 33. Стабильная инфраструктура Выключать автоматическое обновление windows-серверов Использовать фиксированные пароли Шаблоны виртуальных машин Скрипты для установки переменных окружения
  • 34. Стабильная инфраструктура Выключать автоматическое обновление windows-серверов Использовать фиксированные пароли Шаблоны виртуальных машин Скрипты для установки переменных окружения Запланированные maintenance активности
  • 35. Работа многих людей одновременно Возникающие проблемы: Каждый может что-то поломать Не все могут быть "в курсе" изменений Требуется синхронизация разных работ
  • 36. Каждый может что-то поломать Решение: Continious Integration
  • 37. Каждый может что-то поломать Решение: Continious Integration Hudson, CruiseControl, Bamboo... Проводится только компиляция тестов Письмо виноватому и начальству в случае поломки
  • 38. Не все могут быть "в курсе" изменений Варианты решения: Общий чат E-mail рассылки Регулярные статусные митинги
  • 39. Не все могут быть "в курсе" изменений Варианты решения: Общий чат E-mail рассылки Регулярные статусные митинги Больше общайтесь! :)
  • 40. Разделение на подкоманды Синхронизация разных работ
  • 42. Проблемы синхронизации всё-таки возникают Нужно всем вместе установить новую сборку приложения Требуется сделать следующий branch Меняем текущий поддерживаемый браузер и т д
  • 43. Стабильные тесты Основной показатель - Success Rate
  • 44. Стабильные тесты Основной показатель - Success Rate Какой результат достижим для UI тестов (от 0% до 100%)?
  • 45. Стабильные тесты Основной показатель - Success Rate Какой результат достижим для UI тестов (от 0% до 100%)? Наш целевой показатель - 97%
  • 46. Стабильные тесты Основной показатель - Success Rate Какой результат достижим для UI тестов (от 0% до 100%)? Наш целевой показатель - 97% Отдельный проект в Bug Tracking системе для быстрого реагирования на запросы (а также контроль качества)
  • 47. Стабильные тесты Основной показатель - Success Rate Какой результат достижим для UI тестов (от 0% до 100%)? Наш целевой показатель - 97% Отдельный проект в Bug Tracking системе для быстрого реагирования на запросы (а также контроль качества) Какие из тестов стабильнее? нет дефектов в Bug Tracking'е регулярно заносятся дефекты
  • 48. Инфраструктура для запуска тестов Возможность запуска тестов всем заинтересованным людям Централизованное хранилище результатов Создание пула машин для выполения тестов
  • 49. Инфраструктура для запуска тестов Возможность запуска тестов всем заинтересованным людям Централизованное хранилище результатов Создание пула машин для выполения тестов Предстоит сделать...

Editor's Notes

  • #12: До сих пор называем тесты "ночными".