С чего начинается родина в автоматизации Qiwi Wallet

18
Software quality assurance days 20 Международная конференция по вопросам качества ПО sqadays.com Минск. 24–26 ноября 2016 Матвеев Сергей ООО «Джон Вайли и сыновья Рус» С чего начинается родина в автоматизации Qiwi Wallet

Transcript of С чего начинается родина в автоматизации Qiwi Wallet

Software quality assurance days20 Международная конференция по вопросам качества ПОsqadays.com

Минск. 24–26 ноября 2016

Матвеев Сергей ООО «Джон Вайли и сыновья Рус»

С чего начинается родина в автоматизации

Qiwi Wallet

С чего начинается родина в автоматизации Qiwi Wallet2

О себе

В тестировании около 5 лет

Развиваю автоматизацию

Люблю организовывать процессы и вдохновлять людей

С чего начинается родина в автоматизации Qiwi Wallet3

О чем этот доклад?

С чего начинается родина в автоматизации Qiwi Wallet4

Процесс

70 тест кейсов. Довольно абстрактно описанные: «Проверить форму оплаты ЖКУ»

Нет требований к автотестам Автотесты отдельно от ручных тест кейсов

С чего начинается родина в автоматизации Qiwi Wallet5

Фреймворк

Java+Spring+Selenium Однопоточные Только локальный запуск Мало информативные

С чего начинается родина в автоматизации Qiwi Wallet6

Резкое наращивание функционала Еще большее расхождение процесса ручного тестирования и

автоматизации Много времени на покрытие обычного провайдера Редизайн сайта привел к переписыванию всех тестов

Первые проблемы

С чего начинается родина в автоматизации Qiwi Wallet7

Qiwi wallet autotests new generation

С чего начинается родина в автоматизации Qiwi Wallet8

QWANG Java + Selenium + Selenide Многопоточность Четкие требования к структуре автотеста Явная связь с ручным кейсом (TestRail) Информативный отчет

С чего начинается родина в автоматизации Qiwi Wallet9

Четкие требования к структуре

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

Генераторы тестовых данных

Бизнес уровень Реализация Приложение

С чего начинается родина в автоматизации Qiwi Wallet10

Явная связь с тест кейсомШаг

Действие Результат

1

Действие 1Действие 2Действие 3

…Действие N

Результат 1Результат 2Результат 3

…Результат N

2

Действие 1Действие 2Действие 3

…Действие N

Результат 1Результат 2Результат 3

…Результат N

3

Действие 1Действие 2Действие 3

…Действие N

Результат 1Результат 2Результат 3

…Результат N

Шаг Действие Результат

1 Действие 1 Результат 1

2 Действие 23 Действие 3 Результат

2Шаг Действие Результа

т1 Действие 1 Результат

12 Действие 23 Действие 3 Результат

2Шаг Действие Результа

т1 Действие 1 Результат

12 Действие 23 Действие 3 Результат

2

С чего начинается родина в автоматизации Qiwi Wallet11

Типичный тест@Test public void loginTest() { app.getAuthHelper().loginAs(user.MTS); //some code… }

public void loginAs(User user) { auth.setLogin(user.getPhone()) .setPassword(user.getPassword()) .clickSubmitButton();}

public void setLogin(String login) { $(By.cssSelector("#phone")).setValue(login);}

Уровень бизнес логики

Уровень реализации 1-го порядка

Уровень реализации 2-го порядка

С чего начинается родина в автоматизации Qiwi Wallet12

Текущий подход в автоматизации

Анализ нового функционала Описание его в виде тест кейсов (Function Tests) Выделение кейсов к автоматизации (should Be automated) Автоматизация кейсов Перевод кейсов в тип автоматизированных (Automated Tests)

С чего начинается родина в автоматизации Qiwi Wallet13

Процесс выпуска ПО

DEV QA

Something very important

1 неделя1 неделя

С чего начинается родина в автоматизации Qiwi Wallet14

С чего начинается родина в автоматизации Qiwi Wallet15

Типы тестов

Unit testing Integration testing Component testing (API) End-to-End (UI)

С чего начинается родина в автоматизации Qiwi Wallet16

Пирамида автоматизации

Manual Testingasdsad

С чего начинается родина в автоматизации Qiwi Wallet17

Место автотестов в релизеPull request GitHub report

Run unit + integrated tests

Merge to develop Build & deploy

Run API tests

Code review

С чего начинается родина в автоматизации Qiwi Wallet18

Спасибо за вниманиеВопросы