SlideShare a Scribd company logo
1 of 52
Download to read offline
Большим данным –
быстрые тесты
Станислав Буткеев
О себе
– Ведущий тестировщик в 2ГИС
– За плечами 4 года
– Внутренние продукты
WWW.2GIS.RU
Мы знаем, что вы делали прошлым летом
– куда кликали,
– что искали,
– что смотрели
2gis.ru
Big
Data
СтатистикаOnline
Mobile
Desktop
«Big Data – большой объём
информации, её разнообразие и
необходимость очень быстрой
обработки данных»
Состав хранилища данных
Статистика
Справочники
WWW.2GIS.RU
20Гбежедневно
+
4Тб
Скачивания
баз оболочек
10 000
Москва
Скачивания
баз оболочек
1000
Москва
Март 2014
Скачивания
баз оболочек
600
Москва
Март 2014
Один запуск
Скачивания
баз оболочек
200
Как тестировать?
Хранилище
данных
Внутр.
продукты
Базы
сырой
стат-ки
Внешние
продукты
Отчёты
OLAP
кубы
WWW.2GIS.RU
парсеры
SSIS
14.02
Дата
Кол-во
WWW.2GIS.RU
Посещение рубрик
?
14.02
Дата
Кол-во
WWW.2GIS.RU
Посещение рубрик
Цветы
Какие есть проблемы?
Проблемы
– Данных очень много, 4Тб
– Сложные взаимосвязи между справочниками
и статистикой пользователей
– Длительное время для сборки кубов
Долгое тестирование
Целых 2 дня
Автоматизация
–Исключить человеческий фактор
–Проверка связей между справочниками
и фактами
–Корректность данных в кубах
1. Автотесты
Автотесты на кубы
2 дня
1 день
Результат №1
WWW.2GIS.RU
2 дня
Прогон тестов - 4ч
Результат №1
WWW.2GIS.RU
Подготовка базы – 20ч
2. Нужно уметь создавать
срез хранилища
Подготовка тестовой среды
1. Резвёртывание тестовых БД (MSSQL, OLAP)
2. Копирование таблиц
3. Обработка кубов
10WWW.2GIS.RU
ToolStick
WWW.2GIS.RU
WWW.2GIS.RU
Один конфиг на сборку куба
WWW.2GIS.RU
Несколько конфигов на каждый куб
WWW.2GIS.RU
Общий конфиг для всех кубов
Результат №2
WWW.2GIS.RU
1 день
1 час
БОНУС
Автоматизация пакетов
интеграции
Другие возможности
1. Запуск SQL, PostgreSQL-скриптов
2. Создание связанных серверов
3. Запуск cmd-файлов
4. Работа с rabbit-очередями
WWW.2GIS.RU
WWW.2GIS.RU
Несколько конфигов на каждый пакет
WWW.2GIS.RU
Общий конфиг для всех пакетов
WWW.2GIS.RU
Автотесты на пакеты
ИТОГО
WWW.2GIS.RU
+
ToolStick Автотесты
3. Сontinuous Integration
ToolStick + MSTest = TeamCity
Результаты выполнения теста
WWW.2GIS.RU
Результат №3
WWW.2GIS.RU
1 час
0 мин
WWW.2GIS.RU
Покрытие
42%
Заключение
Big Data тоже можно тестировать быстро:
– Использование фреймворков (ToolStick)
– Автотесты
– CI
WWW.2GIS.RU
WWW.2GIS.RU
https://github.com/2gis/ToolStick
Вопросы?
Станислав Буткеев
s.butkeev@2gis.ru

More Related Content

Viewers also liked

Автоматизация тестирования как сервис
Автоматизация тестирования как сервисАвтоматизация тестирования как сервис
Автоматизация тестирования как сервис
automated-testing.info
 
Knockoutjs на примере 2ГИС-Онлайн
Knockoutjs на примере 2ГИС-ОнлайнKnockoutjs на примере 2ГИС-Онлайн
Knockoutjs на примере 2ГИС-Онлайн
2ГИС Технологии
 
Кадры для ИТ-индустрии: найти и удержать
Кадры для ИТ-индустрии: найти и удержатьКадры для ИТ-индустрии: найти и удержать
Кадры для ИТ-индустрии: найти и удержать
SQALab
 
Организация процесса тестирования в Agile команде с помощью квадрантов тестир...
Организация процесса тестирования в Agile команде с помощью квадрантов тестир...Организация процесса тестирования в Agile команде с помощью квадрантов тестир...
Организация процесса тестирования в Agile команде с помощью квадрантов тестир...
SQALab
 

Viewers also liked (20)

Автоматизация тестирования как сервис
Автоматизация тестирования как сервисАвтоматизация тестирования как сервис
Автоматизация тестирования как сервис
 
Лайфхаки ручного тестирования на мобилках
Лайфхаки ручного тестирования на мобилкахЛайфхаки ручного тестирования на мобилках
Лайфхаки ручного тестирования на мобилках
 
«Функциональное тестирование высоконагруженных проектов» – Илья Пастушков, 2ГИС
«Функциональное тестирование высоконагруженных проектов» – Илья Пастушков, 2ГИС «Функциональное тестирование высоконагруженных проектов» – Илья Пастушков, 2ГИС
«Функциональное тестирование высоконагруженных проектов» – Илья Пастушков, 2ГИС
 
«Частые релизы в Enterprise» – Алексей Чурбанов, 2ГИС
«Частые релизы в Enterprise» – Алексей Чурбанов, 2ГИС«Частые релизы в Enterprise» – Алексей Чурбанов, 2ГИС
«Частые релизы в Enterprise» – Алексей Чурбанов, 2ГИС
 
Как приготовить тестовые данные для Big Data проекта. Пример из практики
Как приготовить тестовые данные для Big Data проекта. Пример из практикиКак приготовить тестовые данные для Big Data проекта. Пример из практики
Как приготовить тестовые данные для Big Data проекта. Пример из практики
 
Как защитить свой код
Как защитить свой кодКак защитить свой код
Как защитить свой код
 
«Автоматизация тестовой инфраструктуры в 2ГИС» — Антон Голицын, 2ГИС
«Автоматизация тестовой инфраструктуры в 2ГИС» — Антон Голицын, 2ГИС«Автоматизация тестовой инфраструктуры в 2ГИС» — Антон Голицын, 2ГИС
«Автоматизация тестовой инфраструктуры в 2ГИС» — Антон Голицын, 2ГИС
 
Highway to Continuous Integration — Денис Трифонов, 2ГИС
Highway to Continuous Integration — Денис Трифонов, 2ГИСHighway to Continuous Integration — Денис Трифонов, 2ГИС
Highway to Continuous Integration — Денис Трифонов, 2ГИС
 
«Тестируем мобильное приложение в суровых реалиях Интернета» – Андрей Усов, 2ГИС
«Тестируем мобильное приложение в суровых реалиях Интернета» – Андрей Усов, 2ГИС«Тестируем мобильное приложение в суровых реалиях Интернета» – Андрей Усов, 2ГИС
«Тестируем мобильное приложение в суровых реалиях Интернета» – Андрей Усов, 2ГИС
 
«Девиации и патологии в отношениях с руководителями и подчинёнными» — Степан ...
«Девиации и патологии в отношениях с руководителями и подчинёнными» — Степан ...«Девиации и патологии в отношениях с руководителями и подчинёнными» — Степан ...
«Девиации и патологии в отношениях с руководителями и подчинёнными» — Степан ...
 
Knockoutjs на примере 2ГИС-Онлайн
Knockoutjs на примере 2ГИС-ОнлайнKnockoutjs на примере 2ГИС-Онлайн
Knockoutjs на примере 2ГИС-Онлайн
 
«Реактивные грабли» — Дмитрий Кулижников, 2ГИС
«Реактивные грабли» — Дмитрий Кулижников, 2ГИС«Реактивные грабли» — Дмитрий Кулижников, 2ГИС
«Реактивные грабли» — Дмитрий Кулижников, 2ГИС
 
«GitHub Flow — немного сложнее, чем на бумаге», Александр Бирюков
«GitHub Flow — немного сложнее, чем на бумаге», Александр Бирюков«GitHub Flow — немного сложнее, чем на бумаге», Александр Бирюков
«GitHub Flow — немного сложнее, чем на бумаге», Александр Бирюков
 
Суперсилы Chrome developer tools
Суперсилы Chrome developer toolsСуперсилы Chrome developer tools
Суперсилы Chrome developer tools
 
How to Test Big Data Systems | QualiTest Group
How to Test Big Data Systems | QualiTest GroupHow to Test Big Data Systems | QualiTest Group
How to Test Big Data Systems | QualiTest Group
 
Тимофей Чаптыков «Верстальщик должен быть ленивый»
Тимофей Чаптыков «Верстальщик должен быть ленивый»Тимофей Чаптыков «Верстальщик должен быть ленивый»
Тимофей Чаптыков «Верстальщик должен быть ленивый»
 
Роман Янке
Роман ЯнкеРоман Янке
Роман Янке
 
Кадры для ИТ-индустрии: найти и удержать
Кадры для ИТ-индустрии: найти и удержатьКадры для ИТ-индустрии: найти и удержать
Кадры для ИТ-индустрии: найти и удержать
 
Организация процесса тестирования в Agile команде с помощью квадрантов тестир...
Организация процесса тестирования в Agile команде с помощью квадрантов тестир...Организация процесса тестирования в Agile команде с помощью квадрантов тестир...
Организация процесса тестирования в Agile команде с помощью квадрантов тестир...
 
Вебинар: Технологии разработки индивидуальных планов развития
Вебинар: Технологии разработки индивидуальных планов развитияВебинар: Технологии разработки индивидуальных планов развития
Вебинар: Технологии разработки индивидуальных планов развития
 

More from SQALab

More from SQALab (20)

Готовим стажировку
Готовим стажировкуГотовим стажировку
Готовим стажировку
 
Куда приводят мечты? или Искусство развития тестировщика
Куда приводят мечты? или Искусство развития тестировщикаКуда приводят мечты? или Искусство развития тестировщика
Куда приводят мечты? или Искусство развития тестировщика
 
Оптимизация Selenium тестов и ускорение их поддержки
Оптимизация Selenium тестов и ускорение их поддержкиОптимизация Selenium тестов и ускорение их поддержки
Оптимизация Selenium тестов и ускорение их поддержки
 
Автоматизация 0.0: 0 - бюджет, 0 - опыт программирования
Автоматизация 0.0: 0 - бюджет, 0 - опыт программированияАвтоматизация 0.0: 0 - бюджет, 0 - опыт программирования
Автоматизация 0.0: 0 - бюджет, 0 - опыт программирования
 
Нагрузочное тестирование нестандартных протоколов с использованием Citrix и J...
Нагрузочное тестирование нестандартных протоколов с использованием Citrix и J...Нагрузочное тестирование нестандартных протоколов с использованием Citrix и J...
Нагрузочное тестирование нестандартных протоколов с использованием Citrix и J...
 
Continuous performance testing
Continuous performance testingContinuous performance testing
Continuous performance testing
 
Конфиги вместо костылей. Pytestconfig и зачем он нужен
Конфиги вместо костылей. Pytestconfig и зачем он нуженКонфиги вместо костылей. Pytestconfig и зачем он нужен
Конфиги вместо костылей. Pytestconfig и зачем он нужен
 
Команда чемпионов в ИТ стихии
Команда чемпионов в ИТ стихииКоманда чемпионов в ИТ стихии
Команда чемпионов в ИТ стихии
 
API. Серебряная пуля в магазине советов
API. Серебряная пуля в магазине советовAPI. Серебряная пуля в магазине советов
API. Серебряная пуля в магазине советов
 
Добиваемся эффективности каждого из 9000+ UI-тестов
Добиваемся эффективности каждого из 9000+ UI-тестовДобиваемся эффективности каждого из 9000+ UI-тестов
Добиваемся эффективности каждого из 9000+ UI-тестов
 
Делаем автоматизацию проектных KPIs
Делаем автоматизацию проектных KPIsДелаем автоматизацию проектных KPIs
Делаем автоматизацию проектных KPIs
 
Вредные привычки в тест-менеджменте
Вредные привычки в тест-менеджментеВредные привычки в тест-менеджменте
Вредные привычки в тест-менеджменте
 
Мощь переполняет с JDI 2.0 - новая эра UI автоматизации
Мощь переполняет с JDI 2.0 - новая эра UI автоматизацииМощь переполняет с JDI 2.0 - новая эра UI автоматизации
Мощь переполняет с JDI 2.0 - новая эра UI автоматизации
 
Как hh.ru дошли до 500 релизов в квартал без потери в качестве
Как hh.ru дошли до 500 релизов в квартал без потери в качествеКак hh.ru дошли до 500 релизов в квартал без потери в качестве
Как hh.ru дошли до 500 релизов в квартал без потери в качестве
 
Стили лидерства и тестирование
Стили лидерства и тестированиеСтили лидерства и тестирование
Стили лидерства и тестирование
 
"Давайте не будем про качество"
"Давайте не будем про качество""Давайте не будем про качество"
"Давайте не будем про качество"
 
Apache.JMeter для .NET-проектов
Apache.JMeter для .NET-проектовApache.JMeter для .NET-проектов
Apache.JMeter для .NET-проектов
 
Тестирование геолокационных систем
Тестирование геолокационных системТестирование геолокационных систем
Тестирование геолокационных систем
 
Лидер или босс? Вот в чем вопрос
Лидер или босс? Вот в чем вопросЛидер или босс? Вот в чем вопрос
Лидер или босс? Вот в чем вопрос
 
От Зефира в коробке к Structure Zephyr или как тест-менеджеру перекроить внут...
От Зефира в коробке к Structure Zephyr или как тест-менеджеру перекроить внут...От Зефира в коробке к Structure Zephyr или как тест-менеджеру перекроить внут...
От Зефира в коробке к Structure Zephyr или как тест-менеджеру перекроить внут...
 

Большим данным — быстрые тесты