15
AUTOMATED TESTING IN STORE PROJECT by Alexander Hayorov <[email protected]> Shipping Better Software Faster

Mpc store testing

Embed Size (px)

Citation preview

Page 1: Mpc store testing

AUTOMATED TESTING IN STORE PROJECT

by Alexander Hayorov <[email protected]>

Shipping Better Software Faster

Page 2: Mpc store testing

AGENDA• Continuous integration инфраструктура

• Непрерывная сборка

• Выкладка артефактов

• О тестировании в целом

• Тестирование стабильности

• Автоматизация регрессионного тестирования

• Немного статистики

Page 3: Mpc store testing

ОСНОВЫ CONTINUOUS INTEGRATIONСерверная инфраструктура и экосистема CI

Dedicated hardware server with KVM virtualization

Jenkins (CI) ci.myplaycity.com Builder server Deploy server

Artifacts storage (builds, reports)

CVS (Bitbucket)

Page 4: Mpc store testing

НЕПРЕРВЫВНАЯ СБОРКА“Debug” сборка master по commit

Page 5: Mpc store testing

НЕПРЕРВЫВНАЯ СБОРКАСборка из веток

Page 6: Mpc store testing

ВЫКЛАДКА АРТЕФАКТОВ • на testflight сервис*

* с 21 марта 2014 сервис не предоставляется для android :(

используется для установки на устройства при ручном тестировании

Page 7: Mpc store testing

ВЫКЛАДКА АРТЕФАКТОВ • на собственное хранилищеиспользуется в автоматизированном тестировании, также можно использовать для ручной установки

Page 8: Mpc store testing

О ТЕСТИРОВАНИИ В ЦЕЛОМНепрерывное приемочное тестирование - проверка соответвии требованиям (описанию) - формализация тест-кейсов

Пред-релизный цикл тестирования:- кумулятивное тестирование новых функциональностей релиза (актуализация регрессионных тестов)

- короткий цикл регрессионного тестирования с высокой частотой повторения

Page 9: Mpc store testing

АВТОМАТИЗАЦИЯ ТЕСТИРОВАНИЯДополнительный этап - тестирование стабильности

Monkey test (aka. Mark Testing) !4 эталонных устройства ! Имя Версия OC Аналог

etalon-10 2.3.3 Motorola Razr Max

etalon-15 4.0.3 Samsung Galaxy S2

etalon-17 4.2.2 Google Nexus One

etalon-18 4.3 Google Nexus 4

!Демо видео http://www.youtube.com/watch?v=hvLo1_PwZjU

10 минут приложение в руках обезьяны

Page 10: Mpc store testing

АВТОМАТИЗАЦИЯ ТЕСТИРОВАНИЯОбнаруживает критические ошибки в приложении

* приложение вынужденно завершилось, причина - ошибка при обращении к БД при условии 100% занятой карты памяти

Page 11: Mpc store testing

АВТОМАТИЗАЦИЯ РЕГРЕССИИСценарии тестов на основе тест кейсов ручной регрессии

Шаги составляют тест, тесты объеденены в сьюты (наборы)

Проект тестов повторяет жизненный цикл продукта

Page 12: Mpc store testing

АВТОМАТИЗАЦИЯ РЕГРЕССИИТесты написаны на python

Запускаются с Jenkins для любого билда и эталонного устройства

Можно смотреть за ходом тестирования на устройстве по VNC

* пароль при подключении к экрану 1q2w3e

!Демо видео http://youtu.be/RRCRDr0oZbc

Page 13: Mpc store testing

АВТОМАТИЗАЦИЯ РЕГРЕССИИНаглядные отчеты на AngularJS прямо в Jenkins

Демо: http://ci.myplaycity.com:8080/job/store-acceptance-tests/18/allure/?#/home/de455213-a04a-4768-916a-35d663c33650/98fe1439-79fc-4b98-9cae-92e97f6b4c9e

Page 14: Mpc store testing

НЕМНОГО СТАТИСТИКИ

Автоматизировано 21 ручной тест-кейс

Покрытие кода 64%*

* по критерию покрытия вход/выход

Покрытие экранов 66% (46)

Время прогона 14 минут

Page 15: Mpc store testing

СПАСИБО