Upgrade to Pro — share decks privately, control downloads, hide ads and more …

Почему appium?

Почему appium?

Доклад о том, почему вы выбрали именно Appium в качестве инструмента для автоматизации тестирования мобильных приложений.

Anastasia

August 25, 2016
Tweet

More Decks by Anastasia

Other Decks in Programming

Transcript

  1. ПАРУ СЛОВ О СЕБЕ: АСЕЕВА АНАСТАСИЯ П О Ч Е

    М У A P P I U M ? Devops евангелист Agile Testing тренер Руководитель автоматизации тестирования В QA c 2012 года В IT с 2007 года В Альфа­Банке внедряю Облака Немного пишу код =) Люблю Linux
  2. ЗАЧЕМ НАМ АВТОТЕСТЫ? П О Ч Е М У A

    P P I U M ? "У вебчика есть автотесты, а у нас нет!" ...на самом деле: Хотим быстро доставлять ценность до клиента!
  3. Исследовали "рынок" платформ и выбрали ТОП подходящих, для проверки гипотезы

    Исследование А С Е Е В А А Н А С Т А С И Я 01 В итоге исследования выбрали appium. Разработали ядро для АБМ. Пилот 02 До конца 2016го года разработать кроссплатформенный smoke для Альфа Мобайла Разработка smoke-set для двух платформ 03 СТРАТЕГИЯ Н А Ш Е Р А З В И Т И Е
  4. Ограниченный бюджет не позволяет на проект брать разработчиков с разным

    технологическим стеком ЧТО ХОТИМ? ios LIKES 1500 75% Java Платформа должна поддерживать BDD библиотеки для написания тестов, чтоб супертестировщики самостоятельно поддерживали проект Необходима возможность построить свою "ферму" с устройствами для распределенного тестирования Платформа должна обладать развитым интернет-community Кроссплатформенно е Core Автотесты для android и ios Ci: Jenkins+Allure Community И С С Л Е Д О В А Н И Е С П И С О К О Г Р А Н И Ч Е Н И Й
  5. Использование библиотек BDD, например JBehave Использование паттернов PageObject, подхода DDD

    А С Е Е В А А Н А С Т А С И Я 01 DDD, PageObject BDD 03 Selenium-оподобный подход. Низкий порог вхождения в использование инструмента. Selenium подход 02 Единый технологический стек для автоматизации тестирования, как для мобильных приложений так и для веб- приложений Переиспользование инженерных практик и экспертизы 04 ПРИНЦИПЫ Р А З Р А Б О Т К И Я Д Р А
  6. К А К И Е П Л А Т Ф

    О Р М Ы Р А С С М А Т Р И В А Л И А С ЧЕМ СРАВНИВАЛИ? П Р О И С С Л Е Д О В А Н И Е Native Crossplatform VS.
  7. А С ЧЕМ СРАВНИВАЛИ? П Р О И С С

    Л Е Д О В А Н И Е Native platform Разработчик для UIAutomation - 150к + Java разработчик для UIautomator - 120к + ИТОГО: - расходы на ЗП - 270к + - удорожание сопровождения автотестов СЛОЖНОСТИ В ПОИСКЕ НЕОБХОДИМЫХ КАДРОВ НА РЫНКЕ
  8. К А К И Е П Л А Т Ф

    О Р М Ы Р А С С М А Т Р И В А Л И А С ЧЕМ СРАВНИВАЛИ? П Р О И С С Л Е Д О В А Н И Е Crossplatform Java разработчик - 120к + Поддержка и сопровождение автотестов - силами супертестировищиков СЛОЖНОСТИ ПРИ ВЫХОДЕ ОБНОВЛЕНИЙ ДЛЯ ПЛАТФОРМ ios
  9. Ф И Л О С О Ф И Я A

    P P I U M 4 ПРИНЦИПА А С Е Е В А А Н А С Т А С И Я 1. Не нужно перекомпилировать или модифицировать приложение, для того чтобы автоматизировать его 2. Не должны быть завязаны на определенный язык программирования или фреймворк для того чтобы писать и запускать тесты 3. Фреймворк не должен переизобретать колесо, когда дело доходит до автоматизации API 4. Фреймвор должен быть open source
  10. S T A T I S T I C S

    ЧТО ПОЛУЧИЛИ? А С Е Е В А А Н А С Т А С И Я https://unmesh.me/2013/08/25/testing­native­mobile­apps­with­ testcomplete­and­appium­an­alternative/
  11. О Б Щ Е Е И Н Ф О ПРО

    APPIUM П Р О A P P I U M iOS Android на реальных девайсах на симуляторах (iOS, FirefoxOS) эмуляторах (Android). нативные гибридные web приложения Тесты можно запускать: Можно тестировать: Поддержка платформ:
  12. Ф А Й Л О В А Я С Т

    Р У К Т У Р А СТРУКТУРА ПРОЕКТА П Р О Ф Р Е Й М В О Р К
  13. Г И Б К О Е К О Н Ф

    И Г У Р И Р О В А Н И Е КОНФИГУРИРОВАНИЕ П Р О Ф Р Е Й М В О Р К
  14. ТЕСТ-КЕЙСЫ В BDD З А Ч Е М Н А

    М B D D ? Конструкция: Given When Then Reports: Allure or Serenity
  15. И ВСЁ-ТАКИ ПОЧЕМУ НА РУССКОМ ЯЗЫКЕ? А С Е Е

    В А А Н А С Т А С И Я А П О Т О М У Ч Т О S P E C I F I C A T I O N E X A M P L E
  16. ЛОКАТОРЫ П Р О Ф Р Е Й М В

    О Р К Использование DDD (Data Driven Development) для проектирования кроссплатформности android­устройства
  17. ЛОКАТОРЫ П Р О Ф Р Е Й М В

    О Р К Использование DDD (Data Driven Development) для проектирования кроссплатформности Преимущества данного подхода: Файл могут отредактировать даже тестировщики Переиспользуемые локаторы хранятся и редактируются в одном месте Упрощение поддержки автотестов Если в проекте много тест-кейсов, то хранить локаторы в коде - неоптимально Если над проектом работают более 1го разработчика, упрощается взаимодействие
  18. CI: КАК ВЫГЛЯДИТ И Н Ф Р А С Т

    Р У К Т У Р А Наша целевая схема Конфигурация CI Jenkins Appium OS: Mac mini pro Node.js Job1 Job2 Job3 android­устройства ios­устройства эмуляторы android­ устройств Appium Java JDK
  19. К О Н Т А К Т Ы КАК СО

    МНОЙ СВЯЗАТЬСЯ? anastasia.aseeva itraviesonastya @travieso_nastya А С Е Е В А А Н А С Т А С И Я