С чего начинается родина в автоматизации qiwi wallet
TRANSCRIPT
Software quality assurance days20 Международная конференция по вопросам качества ПОsqadays.com
Минск. 24–26 ноября 2016
Матвеев Сергей ООО «Джон Вайли и сыновья Рус»
С чего начинается родина в автоматизации
Qiwi Wallet
С чего начинается родина в автоматизации Qiwi Wallet2
О себе
В тестировании около 5 лет
Развиваю автоматизацию
Люблю организовывать процессы и вдохновлять людей
С чего начинается родина в автоматизации Qiwi Wallet4
Процесс
70 тест кейсов. Довольно абстрактно описанные: «Проверить форму оплаты ЖКУ»
Нет требований к автотестам Автотесты отдельно от ручных тест кейсов
С чего начинается родина в автоматизации Qiwi Wallet5
Фреймворк
Java+Spring+Selenium Однопоточные Только локальный запуск Мало информативные
С чего начинается родина в автоматизации Qiwi Wallet6
Резкое наращивание функционала Еще большее расхождение процесса ручного тестирования и
автоматизации Много времени на покрытие обычного провайдера Редизайн сайта привел к переписыванию всех тестов
Первые проблемы
С чего начинается родина в автоматизации 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 Wallet15
Типы тестов
Unit testing Integration testing Component testing (API) End-to-End (UI)
С чего начинается родина в автоматизации Qiwi Wallet17
Место автотестов в релизеPull request GitHub report
Run unit + integrated tests
Merge to develop Build & deploy
Run API tests
Code review