monkey talk - кросс-платформенное средство автоматизации...

40
Monkey Talk – кроссплатформенное средство автоматизации тестирования мобильных приложений, опыт внедрения Владислав Акулич DPI Solutions ISSoft / Coherent Solutions

Upload: sqalab

Post on 02-Jul-2015

861 views

Category:

Education


1 download

DESCRIPTION

Презентация Владислава Акулича на SQA Days-16 14-15 ноября 2014, Санкт-Петербург, Россия www.sqadays.com

TRANSCRIPT

Page 1: Monkey Talk - кросс-платформенное средство автоматизации тестирования мобильных приложений, опыт внедрения

Monkey Talk – кроссплатформенное

средство автоматизации

тестирования мобильных

приложений, опыт внедрения

Владислав Акулич

DPI Solutions

ISSoft / Coherent Solutions

Page 2: Monkey Talk - кросс-платформенное средство автоматизации тестирования мобильных приложений, опыт внедрения

О себе

Владислав Акулич

QA Automation консультант

DPI Solutions

ISSoft / Coherent Solutions

Page 3: Monkey Talk - кросс-платформенное средство автоматизации тестирования мобильных приложений, опыт внедрения

Мы рассмотрим

• Особеноости Monkey Talk

• Нюансы разработки тестов под iOS и

Android

• Интеграция Monkey Talk с «облаком»

• Сравнительный анализ

Page 4: Monkey Talk - кросс-платформенное средство автоматизации тестирования мобильных приложений, опыт внедрения

Что же такое Monkey Talk

• Инструмент Автоматизации

Тестирования мобильных приложений

• Open source

• От простых «Smoke» тестов до сверх

сложных приемочных тестов

Page 5: Monkey Talk - кросс-платформенное средство автоматизации тестирования мобильных приложений, опыт внедрения

Среда разработки

Page 6: Monkey Talk - кросс-платформенное средство автоматизации тестирования мобильных приложений, опыт внедрения

Локаторы в Monkey Talk

Component Tree -

анализирует

структуру

приложения,

присваивая каждому

элементу MonkeyID

(абстракция,

инкапсулирующая

специфический для

платформы локатор).

Page 7: Monkey Talk - кросс-платформенное средство автоматизации тестирования мобильных приложений, опыт внедрения

Отчеты в Monkey Talk IDE

Page 8: Monkey Talk - кросс-платформенное средство автоматизации тестирования мобильных приложений, опыт внедрения

Агенты

• Чтобы начать тестирование мобильных

приложений - нужно внедрить в их

исходный код специальные

библиотеки.

• Затем устаноить обновленное

приложение на устройство.

Page 9: Monkey Talk - кросс-платформенное средство автоматизации тестирования мобильных приложений, опыт внедрения

Разарботка тестов

• Record \ Play решение

• DSL

• JavaScript API

• Java API

Page 10: Monkey Talk - кросс-платформенное средство автоматизации тестирования мобильных приложений, опыт внедрения

Record \ Play тест

Page 11: Monkey Talk - кросс-платформенное средство автоматизации тестирования мобильных приложений, опыт внедрения

JavaScript API тест

Page 12: Monkey Talk - кросс-платформенное средство автоматизации тестирования мобильных приложений, опыт внедрения

DSL тест

Page 13: Monkey Talk - кросс-платформенное средство автоматизации тестирования мобильных приложений, опыт внедрения

Java API

• Доступно с версии 1.0.58

• Monkey Talk тесты в стиле привычных

JUnit Java тестов

• Используйте Java на полную катушку

Page 14: Monkey Talk - кросс-платформенное средство автоматизации тестирования мобильных приложений, опыт внедрения

Monkey Talk Java тест

Page 15: Monkey Talk - кросс-платформенное средство автоматизации тестирования мобильных приложений, опыт внедрения

Один тест на две платформы

Неэффективная, но, к сожалению, столь частая, модель

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

Тест Тест

Page 16: Monkey Talk - кросс-платформенное средство автоматизации тестирования мобильных приложений, опыт внедрения

Один тест на две платформы

Тренд

Тест

Page 17: Monkey Talk - кросс-платформенное средство автоматизации тестирования мобильных приложений, опыт внедрения

Один тест - две платформы

Для этого нужно следующее:

• Java API

• JUnit (параметризированные аннотаций)

Page 18: Monkey Talk - кросс-платформенное средство автоматизации тестирования мобильных приложений, опыт внедрения

Один тест - две платформы

Инициализация драйвера Monkey Talk

Page 19: Monkey Talk - кросс-платформенное средство автоматизации тестирования мобильных приложений, опыт внедрения

Один тест - две платформы

Настройка драйвера

Page 20: Monkey Talk - кросс-платформенное средство автоматизации тестирования мобильных приложений, опыт внедрения

Один тест на две платформы

Создаём тестовый класс с аннтонацией

@RunWith

Page 21: Monkey Talk - кросс-платформенное средство автоматизации тестирования мобильных приложений, опыт внедрения

Один тест на две платформы

Добавляем статический метод с

аннотацией @Parameters

Page 22: Monkey Talk - кросс-платформенное средство автоматизации тестирования мобильных приложений, опыт внедрения

Один тест на две платформы

Теперь можем приступать к написанию

тестов:

Page 23: Monkey Talk - кросс-платформенное средство автоматизации тестирования мобильных приложений, опыт внедрения

Один тест на две платформы

Для написания кросс платформенных тестов iOS \

Android специфика инкапсулируется в процедурном или

ООП стиле

Page 24: Monkey Talk - кросс-платформенное средство автоматизации тестирования мобильных приложений, опыт внедрения

Один тест - две платформы

В итоге мы получаем:

Page 25: Monkey Talk - кросс-платформенное средство автоматизации тестирования мобильных приложений, опыт внедрения

Monkey Talk и облака

Monkey Talk имеет собственное облако, которое

поддерживается в PRO версии продукта:

https://www.cloudmonkeymobile.com/labmanager

Это целая ифраструктура, позволяющая запускать тесты на

различных девайсах, настраивать их и управлять ими

удалённо. Тесты и наше приложение загружаются на облако.

Page 26: Monkey Talk - кросс-платформенное средство автоматизации тестирования мобильных приложений, опыт внедрения

CloudMonkey концепция

Page 27: Monkey Talk - кросс-платформенное средство автоматизации тестирования мобильных приложений, опыт внедрения

Добавление на облако

• Нажимаем

добавить на

облако

• Выставляем

настроики

Page 28: Monkey Talk - кросс-платформенное средство автоматизации тестирования мобильных приложений, опыт внедрения

Cloud отчёты

Page 29: Monkey Talk - кросс-платформенное средство автоматизации тестирования мобильных приложений, опыт внедрения

Cloud домашняя страница

Page 30: Monkey Talk - кросс-платформенное средство автоматизации тестирования мобильных приложений, опыт внедрения

Сравнительный анализ

Параметры сравнения:

• Лицензия

• Платформы

• Устройства

• Типы тестируемых приложений

• Наличие record\play решения

• Языки для написания тестов

Page 31: Monkey Talk - кросс-платформенное средство автоматизации тестирования мобильных приложений, опыт внедрения

Лицензия

Инструмент Тип Оценка

Ranorex Платная Bad

Robotium Бесплатная Good

Appium Бесплатная Good

Monkey Talk Бестпланя и Платная Medium

Calabash Бесплатная Good

Page 32: Monkey Talk - кросс-платформенное средство автоматизации тестирования мобильных приложений, опыт внедрения

Поддерживаемые ОС

Инструмент iOS Android Оценка

Ranorex + + Good

Robotium - + Medium

Appium + + Good

Monkey Talk + + Good

Calabash + + Good

Page 33: Monkey Talk - кросс-платформенное средство автоматизации тестирования мобильных приложений, опыт внедрения

Устройства

Инструент Emulator Real Device Оценка

Ranorex + + Good

Robotium + + Good

Appium + + Good

Monkey Talk + + Good

Calabash + + Good

Page 34: Monkey Talk - кросс-платформенное средство автоматизации тестирования мобильных приложений, опыт внедрения

Типы приложений

Инструмент Native Hybrid Web Оценка

Ranorex + - + (iOS only) Medium

Robotium + (Android

only)

+ (Android

only)

+ (Android

only)

Medium

Appium + + + Good

Monkey Talk + - + Medium

Calabash + - - Bad

Page 35: Monkey Talk - кросс-платформенное средство автоматизации тестирования мобильных приложений, опыт внедрения

Record / Play решение

Инструмент Record Play Оценка

Ranorex + Good

Robotium - (будет выпущен

коммерческий Record Play)

Bad

Appium + Good

Monkey Talk + Good

Calabash - Bad

Page 36: Monkey Talk - кросс-платформенное средство автоматизации тестирования мобильных приложений, опыт внедрения

Языки

Инструмент Использыемые языки Оценка

Ranorex C#, VB.NET Medium

Robotium Java Bad

Appium C#, Java, Python, Ruby,

PHP, JavaScript

Good

Monkey Talk Java, JavaScript, DSL Medium

Calabash Ruby, C#, JVM-based

languages

Medium

Page 37: Monkey Talk - кросс-платформенное средство автоматизации тестирования мобильных приложений, опыт внедрения

Сводные результаты

Инструмент Good Medium Bad

Ranorex 3 2 1

Robotium 2 3 1

Appium 6 0 0

Monkey Talk 3 3 0

Calabash 3 1 2

Page 38: Monkey Talk - кросс-платформенное средство автоматизации тестирования мобильных приложений, опыт внедрения

Что мы имеем в итоге?

Плюсы:

• Бесплатная версия

• Кросс-платформенность(iOS & Android)

• Java API

• Наличие хорошей инструкции

Минусы:

• Необходимость встраивания агента

• Платный Cloud сервис

Page 39: Monkey Talk - кросс-платформенное средство автоматизации тестирования мобильных приложений, опыт внедрения

Полезные ссылки

• Download:

https://www.cloudmonkeymobile.com/monkeytalk

• Getting Started:

https://www.cloudmonkeymobile.com/monkeytalk-

documentation/monkeytalk-getting-started

• User guide:

https://www.cloudmonkeymobile.com/monkeytalk-

documentation/monkeytalk-user-guide

Page 40: Monkey Talk - кросс-платформенное средство автоматизации тестирования мобильных приложений, опыт внедрения

Спасибо! Вопросы?

Владислав Акулич

[email protected]

DPI Solutions

www.dpi.solutions

Belarus QA Automation Community

www.comaqa.by