SlideShare a Scribd company logo
1 of 65
Тестирование миграции пользователей:
case study
t WITH PASSION TO QUALITY
Екатерина Шепелева
QA CONFERENCE #1 IN UKRAINE, KYIV 2018
• Test Lead в EPAM
• Докладчик
QA Fest
Selenium Camp
BAQ Conference
Sigma Open Tech Week
...
• Со-автор первой в Украине настольной игры для
тестировщиков
t WITH PASSION TO QUALITY
KYIV 2018
Обо мне
• Входные данные
• Подход
• Трудности
• Результат
t WITH PASSION TO QUALITY
KYIV 2018
План
Подготовительные работы,
занявшие полтора релиза
t WITH PASSION TO QUALITY
KYIV 2018
О чем я НЕ буду говорить
Case: Миграция пользователей и всех связанных данных в
базы другой системы
t WITH PASSION TO QUALITY
KYIV 2018
Входные данные
Case: Миграция пользователей и всех связанных данных в
базы другой системы
t WITH PASSION TO QUALITY
KYIV 2018
Входные данные
Заказчик
Case: Миграция пользователей и всех связанных данных в
базы другой системы
t WITH PASSION TO QUALITY
KYIV 2018
Входные данные
Заказчик
Проект 1 Проект 2 Проект NМЫ ОНИ…
Case: Миграция пользователей и всех связанных данных в
базы другой системы
t WITH PASSION TO QUALITY
KYIV 2018
Входные данные
Заказчик
Проект 1 Проект 2 Проект NМЫ ОНИ…
Case: Миграция пользователей и всех связанных данных в
базы другой системы
t WITH PASSION TO QUALITY
KYIV 2018
Входные данные
Заказчик
Проект 1 Проект 2 Проект NМЫ ОНИ…
t WITH PASSION TO QUALITY
KYIV 2018
Причины
• Единый логин
• Безопасность
Подход
t WITH PASSION TO QUALITY
KYIV 2018
Подготовка
t WITH PASSION TO QUALITY
KYIV 2018
Заголовок
t WITH PASSION TO QUALITY
KYIV 2018
Полезная штука 1
Спасительные эксельки
• шаги миграции
• сценарии тестирования
t WITH PASSION TO QUALITY
KYIV 2018
Полезная штука 2
SQL скрипты для сравнения состояний до и после миграции
t WITH PASSION TO QUALITY
KYIV 2018
Полезная штука 3
Максимальное логирование во время миграции*
*убедитесь, что хватает места для лога
t WITH PASSION TO QUALITY
KYIV 2018
Полезная штука 4
Без создания новых данных для покрытия всех сценариев
• Скриншоты состояний до/после миграции
• Думать не о скоупе сторей, а обо всех
реальных кейсах
• Подтвердить план тестирования
t WITH PASSION TO QUALITY
KYIV 2018
Что также было полезно
Сценарии
тестирования
t WITH PASSION TO QUALITY
KYIV 2018
Заголовок
Техники тест дизайна:
• Equivalence partitioning
• Error guessing
• Decision tables
• Pairwise testing / All-Pairs
• …
= каждая комбинация протестирована хотя бы один раз
t WITH PASSION TO QUALITY
KYIV 2018
Стряхнем пыль с ISTQB…
t WITH PASSION TO QUALITY
KYIV 2018
Продукт 1
t WITH PASSION TO QUALITY
KYIV 2018
Продукт 1 Продукт 2
t WITH PASSION TO QUALITY
KYIV 2018
Продукт 1 Продукт 2
Продукт 1
Продукт 2
t WITH PASSION TO QUALITY
KYIV 2018
Продукт 1 Продукт 2
Продукт 1
Продукт 2
Нет лицензии
t WITH PASSION TO QUALITY
KYIV 2018
Продукт 1 Продукт 2
Продукт 1
Продукт 2
Нет лицензии
Юзер 1
Юзер 2
Юзер 3
Юзер 4
Юзер 5
t WITH PASSION TO QUALITY
KYIV 2018
Продукт 1 Продукт 2
Продукт 1
Продукт 2
Нет лицензии
Юзер 1
Роли и
пермишены 1
Юзер 2
Юзер 3
Юзер 4
Юзер 5
t WITH PASSION TO QUALITY
KYIV 2018
Продукт 1 Продукт 2
Продукт 1
Продукт 2
Нет лицензии
Юзер 1
Роли и
пермишены 1
2 3 4
Юзер 2 5 6 7 8
Юзер 3 9 10 11 12
Юзер 4 13 14 15 16
Юзер 5 17 18 19 20
t WITH PASSION TO QUALITY
KYIV 2018
Продукт 1 Продукт 2
Продукт 1
Продукт 2
Нет лицензии
Юзер 1
Роли и
пермишены 1
2 3 4
Юзер 2 5 6 7 8
Юзер 3 9 10 11 12
Юзер 4 13 14 15 16
Юзер 5 17 18 19 20
t WITH PASSION TO QUALITY
KYIV 2018
Продукт 1 Продукт 2
Продукт 1
Продукт 2
Нет лицензии
Юзер 1
Роли и
пермишены 1
2 3 4
Юзер 2 5 6 7 8
Юзер 3 9 10 11 12
Юзер 4 13 14 15 16
Юзер 5 17 18 19 20
t WITH PASSION TO QUALITY
KYIV 2018
Продукт 1 Продукт 2
Продукт 1
Продукт 2
Нет лицензии
Юзер 1
Роли и
пермишены 1
2 3 4
Юзер 2 5 6 7 8
Юзер 3 9 10 11 12
Юзер 4 13 14 15 16
Юзер 5 17 18 19 20
t WITH PASSION TO QUALITY
KYIV 2018
Продукт 1 Продукт 2
Продукт 1
Продукт 2
Нет лицензии
Юзер 1
Роли и
пермишены 1
2 3 4
Юзер 2 5 6 7 8
Юзер 3 9
Юзер 4 13 14 15 16
Юзер 5 17 18 19 20
t WITH PASSION TO QUALITY
KYIV 2018
Продукт 1 Продукт 2
Продукт 1
Продукт 2
Нет лицензии
Юзер 1 1 2 3 4
Юзер 2 5 6 7 8
Юзер 3 9
Юзер 4 13 14 15 16
Юзер 5 17 18 19 20
t WITH PASSION TO QUALITY
KYIV 2018
Продукт 1 Продукт 2
Продукт 1
Продукт 2
Нет лицензии
Юзер 1 1 2 3 4
Юзер 2 5 6 7 8
Юзер 3 9
Юзер 4 10
Юзер 5 11
Тестирование
t WITH PASSION TO QUALITY
KYIV 2018
• QA/DEV энвы
• Репетиция миграции на Проде:
Staging с юзерами с Прода - 2 недели
• Client Тesting, Staging, Prod
t WITH PASSION TO QUALITY
KYIV 2018
Шаг 0: Энвы
Тестирование миграции
t WITH PASSION TO QUALITY
KYIV 2018
Шаг 1
• Роли + лицензии + пермишены
• Личные данные + пароли
• Новые и существующие юзеры
• Специальные флаги / сценарии /
пользователи
Смоук основной функциональности
t WITH PASSION TO QUALITY
KYIV 2018
Шаг 2
Ваш
К.О.
t WITH PASSION TO QUALITY
KYIV 2018
Шаг 3: Интеграция
Все точки соприкосновения
t WITH PASSION TO QUALITY
KYIV 2018
Шаг 3: Интеграция
• Login/Logout
• Веб сервисы, Веб API
• OData
• Ссылки на UI новой системы
(например, Manage profile)
• Регистрация – существующий email
и т.д.
• Свои пароли на тест энвах
• Без паролей на юзер энвах
t WITH PASSION TO QUALITY
KYIV 2018
Что делать с паролями?
Трудности
t WITH PASSION TO QUALITY
KYIV 2018
Подготовка
t WITH PASSION TO QUALITY
KYIV 2018
Заголовок
t WITH PASSION TO QUALITY
KYIV 2018
Проблема 1
Не тривиальная миграция базы
= тул для сравнения баз не подойдет
(Redgate SQL Compare, Visual Studio SQL и пр.)
t WITH PASSION TO QUALITY
KYIV 2018
Проблема 1
Время на проработку сценариев
тестирования и подбор тестовых данных
t WITH PASSION TO QUALITY
KYIV 2018
Проблема 2
Нет доступа к данным напрямую, работа с
экспортированными данными в csv/xls файлах
workaround - импортировать файлы в базу
локально, использовать джоины
t WITH PASSION TO QUALITY
KYIV 2018
Проблема 3
Миграция
t WITH PASSION TO QUALITY
KYIV 2018
Заголовок
t WITH PASSION TO QUALITY
KYIV 2018
Заголовок
Разные схемы базы
= лишняя колонка на тестовых энвах
t WITH PASSION TO QUALITY
KYIV 2018
Факап 1
Разные конфигурации серверов
= два сервера → юзеры создались дважды
t WITH PASSION TO QUALITY
KYIV 2018
Факап 2
Невалидные данные
• дубликаты
• запрещенные символы
• неподходящие пароли
t WITH PASSION TO QUALITY
KYIV 2018
Факап 3
Required field в одной базе - null value в другой
• First/Last Name
• Email
• Password
t WITH PASSION TO QUALITY
KYIV 2018
Факап 4
Юзерам отправились письма раньше времени
t WITH PASSION TO QUALITY
KYIV 2018
Факап 5
Требования
t WITH PASSION TO QUALITY
KYIV 2018
Заголовок
Что-то не было продумано ранней архитектурой
t WITH PASSION TO QUALITY
KYIV 2018
Проблема 1
"Не прод кейс"
t WITH PASSION TO QUALITY
KYIV 2018
Проблема 2
Потеря данных
• Fax
• Phone number extension
t WITH PASSION TO QUALITY
KYIV 2018
Проблема 3
Не все было в требованиях → включать
critical thinking
t WITH PASSION TO QUALITY
KYIV 2018
Проблема 4
t WITH PASSION TO QUALITY
KYIV 2018
t WITH PASSION TO QUALITY
KYIV 2018
Сравнить схемы баз данных
required vs optional
string vs int
etc.
Пробелы перед/после email
t WITH PASSION TO QUALITY
KYIV 2018
Что также было БЫ полезно
Результат
t WITH PASSION TO QUALITY
KYIV 2018
• Успешная миграция
• 4 месяца в продакшене
• 0 багов от кастомеров
• 1 некритичный баг, найденный нами*
*непосредственно по миграции
t WITH PASSION TO QUALITY
KYIV 2018
Результат
t WITH PASSION TO QUALITY
KYIV 2018
Вопросы? Контакты
Контакты:
eshepelieva@gmail.com
eshepelieva
search for Kateryna Shepelieva
search for eshepelieva
search for testogame
Спасибо за внимание!
• Участвуйте в розыгрыше – подходите за анкетами
• Подходите играть на диван эксперта сегодня в 16:15
• Розыгрыш в 17:00 на диване эксперта
t WITH PASSION TO QUALITY
KYIV 2018
Настольная игра для тестировщиков TESTO
Тема доклада
Тема доклада
Тема доклада
KYIV 2018
WITH PASSION TO QUALITY
QA CONFERENCE #1 IN UKRAINE

More Related Content

Similar to QA Fest 2018. Екатерина Шепелева. Case study: Тестирование миграции пользователей

Переход с Objective-C на Swift — все ли так просто? / Олег Алексеенко (SuperJob)
Переход с Objective-C на Swift — все ли так просто? / Олег Алексеенко (SuperJob)Переход с Objective-C на Swift — все ли так просто? / Олег Алексеенко (SuperJob)
Переход с Objective-C на Swift — все ли так просто? / Олег Алексеенко (SuperJob)Ontico
 
My talk on DevOps :) at Stachka 2017
My talk on DevOps :) at Stachka 2017My talk on DevOps :) at Stachka 2017
My talk on DevOps :) at Stachka 2017Alex Chistyakov
 
Организация автоматического тестирования в схеме непрерывной интеграции
Организация автоматического тестирования в схеме непрерывной интеграцииОрганизация автоматического тестирования в схеме непрерывной интеграции
Организация автоматического тестирования в схеме непрерывной интеграцииSQALab
 
Performance management lessons learnt / Андрей Дмитриев (JUGRU)
Performance management lessons learnt / Андрей Дмитриев (JUGRU)Performance management lessons learnt / Андрей Дмитриев (JUGRU)
Performance management lessons learnt / Андрей Дмитриев (JUGRU)Ontico
 
Free Desktop QA Engineers: implement automation testing
Free Desktop QA Engineers: implement automation testingFree Desktop QA Engineers: implement automation testing
Free Desktop QA Engineers: implement automation testingAlexandr Zinovyev
 
Багфиксинг процесса разработки в iOS: взгляд с двух сторон
Багфиксинг процесса разработки в iOS: взгляд с двух сторонБагфиксинг процесса разработки в iOS: взгляд с двух сторон
Багфиксинг процесса разработки в iOS: взгляд с двух сторонBadoo Development
 
Implement your own profiler with blackjack and fun
Implement your own profiler with blackjack and funImplement your own profiler with blackjack and fun
Implement your own profiler with blackjack and funVladimir Sitnikov
 
Learning and Certification for Developer
Learning and Certification for DeveloperLearning and Certification for Developer
Learning and Certification for DeveloperAndrey Korshikov
 

Similar to QA Fest 2018. Екатерина Шепелева. Case study: Тестирование миграции пользователей (8)

Переход с Objective-C на Swift — все ли так просто? / Олег Алексеенко (SuperJob)
Переход с Objective-C на Swift — все ли так просто? / Олег Алексеенко (SuperJob)Переход с Objective-C на Swift — все ли так просто? / Олег Алексеенко (SuperJob)
Переход с Objective-C на Swift — все ли так просто? / Олег Алексеенко (SuperJob)
 
My talk on DevOps :) at Stachka 2017
My talk on DevOps :) at Stachka 2017My talk on DevOps :) at Stachka 2017
My talk on DevOps :) at Stachka 2017
 
Организация автоматического тестирования в схеме непрерывной интеграции
Организация автоматического тестирования в схеме непрерывной интеграцииОрганизация автоматического тестирования в схеме непрерывной интеграции
Организация автоматического тестирования в схеме непрерывной интеграции
 
Performance management lessons learnt / Андрей Дмитриев (JUGRU)
Performance management lessons learnt / Андрей Дмитриев (JUGRU)Performance management lessons learnt / Андрей Дмитриев (JUGRU)
Performance management lessons learnt / Андрей Дмитриев (JUGRU)
 
Free Desktop QA Engineers: implement automation testing
Free Desktop QA Engineers: implement automation testingFree Desktop QA Engineers: implement automation testing
Free Desktop QA Engineers: implement automation testing
 
Багфиксинг процесса разработки в iOS: взгляд с двух сторон
Багфиксинг процесса разработки в iOS: взгляд с двух сторонБагфиксинг процесса разработки в iOS: взгляд с двух сторон
Багфиксинг процесса разработки в iOS: взгляд с двух сторон
 
Implement your own profiler with blackjack and fun
Implement your own profiler with blackjack and funImplement your own profiler with blackjack and fun
Implement your own profiler with blackjack and fun
 
Learning and Certification for Developer
Learning and Certification for DeveloperLearning and Certification for Developer
Learning and Certification for Developer
 

More from QAFest

QA Fest 2019. Сергій Короленко. Топ веб вразливостей за 40 хвилин
QA Fest 2019. Сергій Короленко. Топ веб вразливостей за 40 хвилинQA Fest 2019. Сергій Короленко. Топ веб вразливостей за 40 хвилин
QA Fest 2019. Сергій Короленко. Топ веб вразливостей за 40 хвилинQAFest
 
QA Fest 2019. Анна Чернышова. Self-healing test automation 2.0. The Future
QA Fest 2019. Анна Чернышова. Self-healing test automation 2.0. The FutureQA Fest 2019. Анна Чернышова. Self-healing test automation 2.0. The Future
QA Fest 2019. Анна Чернышова. Self-healing test automation 2.0. The FutureQAFest
 
QA Fest 2019. Doug Sillars. It's just too Slow: Testing Mobile application pe...
QA Fest 2019. Doug Sillars. It's just too Slow: Testing Mobile application pe...QA Fest 2019. Doug Sillars. It's just too Slow: Testing Mobile application pe...
QA Fest 2019. Doug Sillars. It's just too Slow: Testing Mobile application pe...QAFest
 
QA Fest 2019. Катерина Спринсян. Параллельное покрытие автотестами и другие и...
QA Fest 2019. Катерина Спринсян. Параллельное покрытие автотестами и другие и...QA Fest 2019. Катерина Спринсян. Параллельное покрытие автотестами и другие и...
QA Fest 2019. Катерина Спринсян. Параллельное покрытие автотестами и другие и...QAFest
 
QA Fest 2019. Никита Галкин. Как зарабатывать больше
QA Fest 2019. Никита Галкин. Как зарабатывать большеQA Fest 2019. Никита Галкин. Как зарабатывать больше
QA Fest 2019. Никита Галкин. Как зарабатывать большеQAFest
 
QA Fest 2019. Сергей Пирогов. Why everything is spoiled
QA Fest 2019. Сергей Пирогов. Why everything is spoiledQA Fest 2019. Сергей Пирогов. Why everything is spoiled
QA Fest 2019. Сергей Пирогов. Why everything is spoiledQAFest
 
QA Fest 2019. Сергей Новик. Между мотивацией и выгоранием
QA Fest 2019. Сергей Новик. Между мотивацией и выгораниемQA Fest 2019. Сергей Новик. Между мотивацией и выгоранием
QA Fest 2019. Сергей Новик. Между мотивацией и выгораниемQAFest
 
QA Fest 2019. Владимир Никонов. Код Шредингера или зачем и как мы тестируем н...
QA Fest 2019. Владимир Никонов. Код Шредингера или зачем и как мы тестируем н...QA Fest 2019. Владимир Никонов. Код Шредингера или зачем и как мы тестируем н...
QA Fest 2019. Владимир Никонов. Код Шредингера или зачем и как мы тестируем н...QAFest
 
QA Fest 2019. Владимир Трандафилов. GUI automation of WEB application with SV...
QA Fest 2019. Владимир Трандафилов. GUI automation of WEB application with SV...QA Fest 2019. Владимир Трандафилов. GUI automation of WEB application with SV...
QA Fest 2019. Владимир Трандафилов. GUI automation of WEB application with SV...QAFest
 
QA Fest 2019. Иван Крутов. Bulletproof Selenium Cluster
QA Fest 2019. Иван Крутов. Bulletproof Selenium ClusterQA Fest 2019. Иван Крутов. Bulletproof Selenium Cluster
QA Fest 2019. Иван Крутов. Bulletproof Selenium ClusterQAFest
 
QA Fest 2019. Николай Мижигурский. Миссия /*не*/выполнима: гуманитарий собесе...
QA Fest 2019. Николай Мижигурский. Миссия /*не*/выполнима: гуманитарий собесе...QA Fest 2019. Николай Мижигурский. Миссия /*не*/выполнима: гуманитарий собесе...
QA Fest 2019. Николай Мижигурский. Миссия /*не*/выполнима: гуманитарий собесе...QAFest
 
QA Fest 2019. Володимир Стиран. Чим раніше – тим вигідніше, але ніколи не піз...
QA Fest 2019. Володимир Стиран. Чим раніше – тим вигідніше, але ніколи не піз...QA Fest 2019. Володимир Стиран. Чим раніше – тим вигідніше, але ніколи не піз...
QA Fest 2019. Володимир Стиран. Чим раніше – тим вигідніше, але ніколи не піз...QAFest
 
QA Fest 2019. Дмитрий Прокопук. Mocks and network tricks in UI automation
QA Fest 2019. Дмитрий Прокопук. Mocks and network tricks in UI automationQA Fest 2019. Дмитрий Прокопук. Mocks and network tricks in UI automation
QA Fest 2019. Дмитрий Прокопук. Mocks and network tricks in UI automationQAFest
 
QA Fest 2019. Екатерина Дядечко. Тестирование медицинского софта — вызовы и в...
QA Fest 2019. Екатерина Дядечко. Тестирование медицинского софта — вызовы и в...QA Fest 2019. Екатерина Дядечко. Тестирование медицинского софта — вызовы и в...
QA Fest 2019. Екатерина Дядечко. Тестирование медицинского софта — вызовы и в...QAFest
 
QA Fest 2019. Катерина Черникова. Tune your P’s: the pop-art of keeping testa...
QA Fest 2019. Катерина Черникова. Tune your P’s: the pop-art of keeping testa...QA Fest 2019. Катерина Черникова. Tune your P’s: the pop-art of keeping testa...
QA Fest 2019. Катерина Черникова. Tune your P’s: the pop-art of keeping testa...QAFest
 
QA Fest 2019. Алиса Бойко. Какнезапутаться в коммуникативных сетях IT
QA Fest 2019. Алиса Бойко. Какнезапутаться в коммуникативных сетях ITQA Fest 2019. Алиса Бойко. Какнезапутаться в коммуникативных сетях IT
QA Fest 2019. Алиса Бойко. Какнезапутаться в коммуникативных сетях ITQAFest
 
QA Fest 2019. Святослав Логин. Как найти уязвимости в мобильном приложении
QA Fest 2019. Святослав Логин. Как найти уязвимости в мобильном приложенииQA Fest 2019. Святослав Логин. Как найти уязвимости в мобильном приложении
QA Fest 2019. Святослав Логин. Как найти уязвимости в мобильном приложенииQAFest
 
QA Fest 2019. Катерина Шепелєва та Інна Оснач. Що українцям потрібно знати пр...
QA Fest 2019. Катерина Шепелєва та Інна Оснач. Що українцям потрібно знати пр...QA Fest 2019. Катерина Шепелєва та Інна Оснач. Що українцям потрібно знати пр...
QA Fest 2019. Катерина Шепелєва та Інна Оснач. Що українцям потрібно знати пр...QAFest
 
QA Fest 2019. Антон Серпутько. Нагрузочное тестирование распределенных асинхр...
QA Fest 2019. Антон Серпутько. Нагрузочное тестирование распределенных асинхр...QA Fest 2019. Антон Серпутько. Нагрузочное тестирование распределенных асинхр...
QA Fest 2019. Антон Серпутько. Нагрузочное тестирование распределенных асинхр...QAFest
 
QA Fest 2019. Петр Тарасенко. QA Hackathon - The Cookbook 22
QA Fest 2019. Петр Тарасенко. QA Hackathon - The Cookbook 22QA Fest 2019. Петр Тарасенко. QA Hackathon - The Cookbook 22
QA Fest 2019. Петр Тарасенко. QA Hackathon - The Cookbook 22QAFest
 

More from QAFest (20)

QA Fest 2019. Сергій Короленко. Топ веб вразливостей за 40 хвилин
QA Fest 2019. Сергій Короленко. Топ веб вразливостей за 40 хвилинQA Fest 2019. Сергій Короленко. Топ веб вразливостей за 40 хвилин
QA Fest 2019. Сергій Короленко. Топ веб вразливостей за 40 хвилин
 
QA Fest 2019. Анна Чернышова. Self-healing test automation 2.0. The Future
QA Fest 2019. Анна Чернышова. Self-healing test automation 2.0. The FutureQA Fest 2019. Анна Чернышова. Self-healing test automation 2.0. The Future
QA Fest 2019. Анна Чернышова. Self-healing test automation 2.0. The Future
 
QA Fest 2019. Doug Sillars. It's just too Slow: Testing Mobile application pe...
QA Fest 2019. Doug Sillars. It's just too Slow: Testing Mobile application pe...QA Fest 2019. Doug Sillars. It's just too Slow: Testing Mobile application pe...
QA Fest 2019. Doug Sillars. It's just too Slow: Testing Mobile application pe...
 
QA Fest 2019. Катерина Спринсян. Параллельное покрытие автотестами и другие и...
QA Fest 2019. Катерина Спринсян. Параллельное покрытие автотестами и другие и...QA Fest 2019. Катерина Спринсян. Параллельное покрытие автотестами и другие и...
QA Fest 2019. Катерина Спринсян. Параллельное покрытие автотестами и другие и...
 
QA Fest 2019. Никита Галкин. Как зарабатывать больше
QA Fest 2019. Никита Галкин. Как зарабатывать большеQA Fest 2019. Никита Галкин. Как зарабатывать больше
QA Fest 2019. Никита Галкин. Как зарабатывать больше
 
QA Fest 2019. Сергей Пирогов. Why everything is spoiled
QA Fest 2019. Сергей Пирогов. Why everything is spoiledQA Fest 2019. Сергей Пирогов. Why everything is spoiled
QA Fest 2019. Сергей Пирогов. Why everything is spoiled
 
QA Fest 2019. Сергей Новик. Между мотивацией и выгоранием
QA Fest 2019. Сергей Новик. Между мотивацией и выгораниемQA Fest 2019. Сергей Новик. Между мотивацией и выгоранием
QA Fest 2019. Сергей Новик. Между мотивацией и выгоранием
 
QA Fest 2019. Владимир Никонов. Код Шредингера или зачем и как мы тестируем н...
QA Fest 2019. Владимир Никонов. Код Шредингера или зачем и как мы тестируем н...QA Fest 2019. Владимир Никонов. Код Шредингера или зачем и как мы тестируем н...
QA Fest 2019. Владимир Никонов. Код Шредингера или зачем и как мы тестируем н...
 
QA Fest 2019. Владимир Трандафилов. GUI automation of WEB application with SV...
QA Fest 2019. Владимир Трандафилов. GUI automation of WEB application with SV...QA Fest 2019. Владимир Трандафилов. GUI automation of WEB application with SV...
QA Fest 2019. Владимир Трандафилов. GUI automation of WEB application with SV...
 
QA Fest 2019. Иван Крутов. Bulletproof Selenium Cluster
QA Fest 2019. Иван Крутов. Bulletproof Selenium ClusterQA Fest 2019. Иван Крутов. Bulletproof Selenium Cluster
QA Fest 2019. Иван Крутов. Bulletproof Selenium Cluster
 
QA Fest 2019. Николай Мижигурский. Миссия /*не*/выполнима: гуманитарий собесе...
QA Fest 2019. Николай Мижигурский. Миссия /*не*/выполнима: гуманитарий собесе...QA Fest 2019. Николай Мижигурский. Миссия /*не*/выполнима: гуманитарий собесе...
QA Fest 2019. Николай Мижигурский. Миссия /*не*/выполнима: гуманитарий собесе...
 
QA Fest 2019. Володимир Стиран. Чим раніше – тим вигідніше, але ніколи не піз...
QA Fest 2019. Володимир Стиран. Чим раніше – тим вигідніше, але ніколи не піз...QA Fest 2019. Володимир Стиран. Чим раніше – тим вигідніше, але ніколи не піз...
QA Fest 2019. Володимир Стиран. Чим раніше – тим вигідніше, але ніколи не піз...
 
QA Fest 2019. Дмитрий Прокопук. Mocks and network tricks in UI automation
QA Fest 2019. Дмитрий Прокопук. Mocks and network tricks in UI automationQA Fest 2019. Дмитрий Прокопук. Mocks and network tricks in UI automation
QA Fest 2019. Дмитрий Прокопук. Mocks and network tricks in UI automation
 
QA Fest 2019. Екатерина Дядечко. Тестирование медицинского софта — вызовы и в...
QA Fest 2019. Екатерина Дядечко. Тестирование медицинского софта — вызовы и в...QA Fest 2019. Екатерина Дядечко. Тестирование медицинского софта — вызовы и в...
QA Fest 2019. Екатерина Дядечко. Тестирование медицинского софта — вызовы и в...
 
QA Fest 2019. Катерина Черникова. Tune your P’s: the pop-art of keeping testa...
QA Fest 2019. Катерина Черникова. Tune your P’s: the pop-art of keeping testa...QA Fest 2019. Катерина Черникова. Tune your P’s: the pop-art of keeping testa...
QA Fest 2019. Катерина Черникова. Tune your P’s: the pop-art of keeping testa...
 
QA Fest 2019. Алиса Бойко. Какнезапутаться в коммуникативных сетях IT
QA Fest 2019. Алиса Бойко. Какнезапутаться в коммуникативных сетях ITQA Fest 2019. Алиса Бойко. Какнезапутаться в коммуникативных сетях IT
QA Fest 2019. Алиса Бойко. Какнезапутаться в коммуникативных сетях IT
 
QA Fest 2019. Святослав Логин. Как найти уязвимости в мобильном приложении
QA Fest 2019. Святослав Логин. Как найти уязвимости в мобильном приложенииQA Fest 2019. Святослав Логин. Как найти уязвимости в мобильном приложении
QA Fest 2019. Святослав Логин. Как найти уязвимости в мобильном приложении
 
QA Fest 2019. Катерина Шепелєва та Інна Оснач. Що українцям потрібно знати пр...
QA Fest 2019. Катерина Шепелєва та Інна Оснач. Що українцям потрібно знати пр...QA Fest 2019. Катерина Шепелєва та Інна Оснач. Що українцям потрібно знати пр...
QA Fest 2019. Катерина Шепелєва та Інна Оснач. Що українцям потрібно знати пр...
 
QA Fest 2019. Антон Серпутько. Нагрузочное тестирование распределенных асинхр...
QA Fest 2019. Антон Серпутько. Нагрузочное тестирование распределенных асинхр...QA Fest 2019. Антон Серпутько. Нагрузочное тестирование распределенных асинхр...
QA Fest 2019. Антон Серпутько. Нагрузочное тестирование распределенных асинхр...
 
QA Fest 2019. Петр Тарасенко. QA Hackathon - The Cookbook 22
QA Fest 2019. Петр Тарасенко. QA Hackathon - The Cookbook 22QA Fest 2019. Петр Тарасенко. QA Hackathon - The Cookbook 22
QA Fest 2019. Петр Тарасенко. QA Hackathon - The Cookbook 22
 

QA Fest 2018. Екатерина Шепелева. Case study: Тестирование миграции пользователей

  • 1. Тестирование миграции пользователей: case study t WITH PASSION TO QUALITY Екатерина Шепелева QA CONFERENCE #1 IN UKRAINE, KYIV 2018
  • 2. • Test Lead в EPAM • Докладчик QA Fest Selenium Camp BAQ Conference Sigma Open Tech Week ... • Со-автор первой в Украине настольной игры для тестировщиков t WITH PASSION TO QUALITY KYIV 2018 Обо мне
  • 3. • Входные данные • Подход • Трудности • Результат t WITH PASSION TO QUALITY KYIV 2018 План
  • 4. Подготовительные работы, занявшие полтора релиза t WITH PASSION TO QUALITY KYIV 2018 О чем я НЕ буду говорить
  • 5. Case: Миграция пользователей и всех связанных данных в базы другой системы t WITH PASSION TO QUALITY KYIV 2018 Входные данные
  • 6. Case: Миграция пользователей и всех связанных данных в базы другой системы t WITH PASSION TO QUALITY KYIV 2018 Входные данные Заказчик
  • 7. Case: Миграция пользователей и всех связанных данных в базы другой системы t WITH PASSION TO QUALITY KYIV 2018 Входные данные Заказчик Проект 1 Проект 2 Проект NМЫ ОНИ…
  • 8. Case: Миграция пользователей и всех связанных данных в базы другой системы t WITH PASSION TO QUALITY KYIV 2018 Входные данные Заказчик Проект 1 Проект 2 Проект NМЫ ОНИ…
  • 9. Case: Миграция пользователей и всех связанных данных в базы другой системы t WITH PASSION TO QUALITY KYIV 2018 Входные данные Заказчик Проект 1 Проект 2 Проект NМЫ ОНИ…
  • 10. t WITH PASSION TO QUALITY KYIV 2018 Причины • Единый логин • Безопасность
  • 11. Подход t WITH PASSION TO QUALITY KYIV 2018
  • 12. Подготовка t WITH PASSION TO QUALITY KYIV 2018 Заголовок
  • 13. t WITH PASSION TO QUALITY KYIV 2018 Полезная штука 1 Спасительные эксельки • шаги миграции • сценарии тестирования
  • 14. t WITH PASSION TO QUALITY KYIV 2018 Полезная штука 2 SQL скрипты для сравнения состояний до и после миграции
  • 15. t WITH PASSION TO QUALITY KYIV 2018 Полезная штука 3 Максимальное логирование во время миграции* *убедитесь, что хватает места для лога
  • 16. t WITH PASSION TO QUALITY KYIV 2018 Полезная штука 4 Без создания новых данных для покрытия всех сценариев
  • 17. • Скриншоты состояний до/после миграции • Думать не о скоупе сторей, а обо всех реальных кейсах • Подтвердить план тестирования t WITH PASSION TO QUALITY KYIV 2018 Что также было полезно
  • 18. Сценарии тестирования t WITH PASSION TO QUALITY KYIV 2018 Заголовок
  • 19. Техники тест дизайна: • Equivalence partitioning • Error guessing • Decision tables • Pairwise testing / All-Pairs • … = каждая комбинация протестирована хотя бы один раз t WITH PASSION TO QUALITY KYIV 2018 Стряхнем пыль с ISTQB…
  • 20. t WITH PASSION TO QUALITY KYIV 2018 Продукт 1
  • 21. t WITH PASSION TO QUALITY KYIV 2018 Продукт 1 Продукт 2
  • 22. t WITH PASSION TO QUALITY KYIV 2018 Продукт 1 Продукт 2 Продукт 1 Продукт 2
  • 23. t WITH PASSION TO QUALITY KYIV 2018 Продукт 1 Продукт 2 Продукт 1 Продукт 2 Нет лицензии
  • 24. t WITH PASSION TO QUALITY KYIV 2018 Продукт 1 Продукт 2 Продукт 1 Продукт 2 Нет лицензии Юзер 1 Юзер 2 Юзер 3 Юзер 4 Юзер 5
  • 25. t WITH PASSION TO QUALITY KYIV 2018 Продукт 1 Продукт 2 Продукт 1 Продукт 2 Нет лицензии Юзер 1 Роли и пермишены 1 Юзер 2 Юзер 3 Юзер 4 Юзер 5
  • 26. t WITH PASSION TO QUALITY KYIV 2018 Продукт 1 Продукт 2 Продукт 1 Продукт 2 Нет лицензии Юзер 1 Роли и пермишены 1 2 3 4 Юзер 2 5 6 7 8 Юзер 3 9 10 11 12 Юзер 4 13 14 15 16 Юзер 5 17 18 19 20
  • 27. t WITH PASSION TO QUALITY KYIV 2018 Продукт 1 Продукт 2 Продукт 1 Продукт 2 Нет лицензии Юзер 1 Роли и пермишены 1 2 3 4 Юзер 2 5 6 7 8 Юзер 3 9 10 11 12 Юзер 4 13 14 15 16 Юзер 5 17 18 19 20
  • 28. t WITH PASSION TO QUALITY KYIV 2018 Продукт 1 Продукт 2 Продукт 1 Продукт 2 Нет лицензии Юзер 1 Роли и пермишены 1 2 3 4 Юзер 2 5 6 7 8 Юзер 3 9 10 11 12 Юзер 4 13 14 15 16 Юзер 5 17 18 19 20
  • 29. t WITH PASSION TO QUALITY KYIV 2018 Продукт 1 Продукт 2 Продукт 1 Продукт 2 Нет лицензии Юзер 1 Роли и пермишены 1 2 3 4 Юзер 2 5 6 7 8 Юзер 3 9 10 11 12 Юзер 4 13 14 15 16 Юзер 5 17 18 19 20
  • 30. t WITH PASSION TO QUALITY KYIV 2018 Продукт 1 Продукт 2 Продукт 1 Продукт 2 Нет лицензии Юзер 1 Роли и пермишены 1 2 3 4 Юзер 2 5 6 7 8 Юзер 3 9 Юзер 4 13 14 15 16 Юзер 5 17 18 19 20
  • 31. t WITH PASSION TO QUALITY KYIV 2018 Продукт 1 Продукт 2 Продукт 1 Продукт 2 Нет лицензии Юзер 1 1 2 3 4 Юзер 2 5 6 7 8 Юзер 3 9 Юзер 4 13 14 15 16 Юзер 5 17 18 19 20
  • 32. t WITH PASSION TO QUALITY KYIV 2018 Продукт 1 Продукт 2 Продукт 1 Продукт 2 Нет лицензии Юзер 1 1 2 3 4 Юзер 2 5 6 7 8 Юзер 3 9 Юзер 4 10 Юзер 5 11
  • 34. • QA/DEV энвы • Репетиция миграции на Проде: Staging с юзерами с Прода - 2 недели • Client Тesting, Staging, Prod t WITH PASSION TO QUALITY KYIV 2018 Шаг 0: Энвы
  • 35. Тестирование миграции t WITH PASSION TO QUALITY KYIV 2018 Шаг 1 • Роли + лицензии + пермишены • Личные данные + пароли • Новые и существующие юзеры • Специальные флаги / сценарии / пользователи
  • 36. Смоук основной функциональности t WITH PASSION TO QUALITY KYIV 2018 Шаг 2 Ваш К.О.
  • 37. t WITH PASSION TO QUALITY KYIV 2018 Шаг 3: Интеграция
  • 38. Все точки соприкосновения t WITH PASSION TO QUALITY KYIV 2018 Шаг 3: Интеграция • Login/Logout • Веб сервисы, Веб API • OData • Ссылки на UI новой системы (например, Manage profile) • Регистрация – существующий email и т.д.
  • 39. • Свои пароли на тест энвах • Без паролей на юзер энвах t WITH PASSION TO QUALITY KYIV 2018 Что делать с паролями?
  • 40. Трудности t WITH PASSION TO QUALITY KYIV 2018
  • 41. Подготовка t WITH PASSION TO QUALITY KYIV 2018 Заголовок
  • 42. t WITH PASSION TO QUALITY KYIV 2018 Проблема 1
  • 43. Не тривиальная миграция базы = тул для сравнения баз не подойдет (Redgate SQL Compare, Visual Studio SQL и пр.) t WITH PASSION TO QUALITY KYIV 2018 Проблема 1
  • 44. Время на проработку сценариев тестирования и подбор тестовых данных t WITH PASSION TO QUALITY KYIV 2018 Проблема 2
  • 45. Нет доступа к данным напрямую, работа с экспортированными данными в csv/xls файлах workaround - импортировать файлы в базу локально, использовать джоины t WITH PASSION TO QUALITY KYIV 2018 Проблема 3
  • 46. Миграция t WITH PASSION TO QUALITY KYIV 2018 Заголовок
  • 47. t WITH PASSION TO QUALITY KYIV 2018 Заголовок
  • 48. Разные схемы базы = лишняя колонка на тестовых энвах t WITH PASSION TO QUALITY KYIV 2018 Факап 1
  • 49. Разные конфигурации серверов = два сервера → юзеры создались дважды t WITH PASSION TO QUALITY KYIV 2018 Факап 2
  • 50. Невалидные данные • дубликаты • запрещенные символы • неподходящие пароли t WITH PASSION TO QUALITY KYIV 2018 Факап 3
  • 51. Required field в одной базе - null value в другой • First/Last Name • Email • Password t WITH PASSION TO QUALITY KYIV 2018 Факап 4
  • 52. Юзерам отправились письма раньше времени t WITH PASSION TO QUALITY KYIV 2018 Факап 5
  • 53. Требования t WITH PASSION TO QUALITY KYIV 2018 Заголовок
  • 54. Что-то не было продумано ранней архитектурой t WITH PASSION TO QUALITY KYIV 2018 Проблема 1
  • 55. "Не прод кейс" t WITH PASSION TO QUALITY KYIV 2018 Проблема 2
  • 56. Потеря данных • Fax • Phone number extension t WITH PASSION TO QUALITY KYIV 2018 Проблема 3
  • 57. Не все было в требованиях → включать critical thinking t WITH PASSION TO QUALITY KYIV 2018 Проблема 4
  • 58. t WITH PASSION TO QUALITY KYIV 2018
  • 59. t WITH PASSION TO QUALITY KYIV 2018
  • 60. Сравнить схемы баз данных required vs optional string vs int etc. Пробелы перед/после email t WITH PASSION TO QUALITY KYIV 2018 Что также было БЫ полезно
  • 61. Результат t WITH PASSION TO QUALITY KYIV 2018
  • 62. • Успешная миграция • 4 месяца в продакшене • 0 багов от кастомеров • 1 некритичный баг, найденный нами* *непосредственно по миграции t WITH PASSION TO QUALITY KYIV 2018 Результат
  • 63. t WITH PASSION TO QUALITY KYIV 2018 Вопросы? Контакты Контакты: eshepelieva@gmail.com eshepelieva search for Kateryna Shepelieva search for eshepelieva search for testogame Спасибо за внимание!
  • 64. • Участвуйте в розыгрыше – подходите за анкетами • Подходите играть на диван эксперта сегодня в 16:15 • Розыгрыш в 17:00 на диване эксперта t WITH PASSION TO QUALITY KYIV 2018 Настольная игра для тестировщиков TESTO
  • 65. Тема доклада Тема доклада Тема доклада KYIV 2018 WITH PASSION TO QUALITY QA CONFERENCE #1 IN UKRAINE