Как я могу автоматически протестировать функциональность приложений iOS и Android?

Я должен регулярно проверять наличие и функционирование сайта проката фильмов. Я написал программу Windows, которая может автоматизировать веб-браузер в соответствии со сценарием, поэтому эта задача в основном решена. Теперь мне нужно автоматизировать мобильную версию этого веб-приложения: родное приложение для iOS и собственное приложение для Android.

Эти приложения закрыты, поэтому их нельзя каким-либо образом изменить. Я думаю, что тестовое приложение должно быть развернуто на тестовых устройствах (iPhone, iPad, Galaxy Tab, Galaxy S II), но я должен быть в состоянии дистанционно управлять им. Я хочу сказать, что я хотел бы создать соединение между тестовыми устройствами и ПК, загрузить тестовые сценарии с ПК на устройства, запустить их и загрузить результаты тестирования на ПК. Сценарий тестирования должен запускать приложение для тестирования, управлять его графическим интерфейсом (заполнять поля редактирования, кнопки и т. Д.) И как-то следить за его ответом, например, анализируя графический интерфейс (наличие некоторых элементов GUI, их подпись и т. Д.), , анализ скриншотов и / или проверка IP-пакетов.

Я написал много подобных тестовых программ для Windows: я использовал ShellExecute, PostMessage, FindWindow, библиотеку WinPcap и т. Д., Поэтому я знаю, как такая программа должна работать. Но так как я никогда не писал приложения для мобильных ОС, я даже не знаю, есть ли подобные API и библиотеки для iOS и Android.

Я хотел бы знать, с чего начать, я имею в виду, какие SDK и инструменты разработчика могут использоваться для написания такого приложения. Я также заинтересован в коммерческих решениях. Я бы очень признателен за любую помощь.

6 Solutions collect form web for “Как я могу автоматически протестировать функциональность приложений iOS и Android?”

Мне нравится « Calabash-iOS / Calabash-Android » от LessPainful . Это лучшее для меня.

  • свободно
  • доступно на iPhone и Android
  • запись и воспроизведение
  • тест на родном и симуляторе

У них нет GUI IDE. Это Ruby-based решения, и очень легко написать сценарий сценария, например:

Then I swipe left And I wait until I don't see "Please swipe left" And take picture 

Также это может быть

 Then I touch the "login" button 

нажмите кнопку, или

 Then I fill in "placeholder" with "text to write" 

написать что-то в текстовое поле.

И сценарий может быть доступен Calabash-iOS и Calabash-Android. Эта функция удобна для разработчиков, которые делают iPhoneApp и Android App.

Я думал, что MonkeyTalk хорош, но на самом деле нестабилен, по крайней мере, в моей среде.
Иногда MonkeyIDE разбился, поэтому нам нужно отлаживать MonkeyTalk …

Я надеюсь, это поможет вам.

MonkeyTalk выглядит многообещающим. Особенности с сайта Gorilla Logic:

  • Бесплатный и открытый источник
  • Автоматическое тестирование приложений iOS, Android, HTML5 и Adobe Flex
  • Кросс-платформенная запись и воспроизведение
  • Тестирование родных, веб-или гибридных приложений, на iOS-симуляторах, эмуляторах Android или реальных устройствах (без джейлбрейка)
  • Все, от простых «тестов дыма» до сложных наборов тестов, управляемых данными

Трассировка пакетов: iOS , Android , Android

Selenium предлагает драйверы для мобильных устройств и эмуляторов. Это проект Google. У них хорошая документация. Он имеет IDE для быстрого прототипирования наборов тестов и поддержки многих языков, таких как ruby, PHP, c # и т. Д.

Если сценарий является вашим предпочтительным решением для Android, вы можете легко импортировать и запускать скрипты после установки Scripting Layer для Android . Просто загрузите последний файл apk, импортируйте скрипт и запустите его. Это недоступно в iOS, но половина вашей проблемы может быть решена с этим.

Мы, на testmunk, написали руководство о том, как начать работу с мобильной автоматизацией. Руководство направляет android, а также спецификацию iOS и перечисляет все необходимые инструменты. Он основан на структуре open source calabash.

Статья находится здесь: http://blog.testmunk.com/tutorial-for-automated-mobile-app-testing-calabash/. В этой статье вы также найдете ссылки на несколько примеров приложений.

Надеюсь, это поможет.

Я знаю, что это старый пост, но любой, кто читает в 2016 году первый выбор для автоматизации, должен быть Appium (работает как на IOS / Android). Все инструменты, упомянутые выше, должны быть созданы с помощью приложения. Appium требует любой сборки с кодом приложения. Он чрезвычайно популярен среди различных языков программирования (PHP / JAVA / RUBY / PYTHON). [Ссылка]: appium.io и [Ссылка]: https://github.com/appium/appium

  • Имитировать изменения ориентации в iOS для целей тестирования
  • Приложение «Автоматизация настроек», iPhone
  • Отключение сети на iPad во время тестирования UIAutomation
  • Как я могу заставить EarlGrey выбрать окно клавиатуры или другие частные элементы UIKit?
  • Просмотр UIAutomation
  • Как обмануть службу определения местоположения с помощью KIF-рамки
  • Можем ли мы использовать инструменты автоматизации пользовательского интерфейса с iPhone Simulator?
  • Использование инструментов для тестирования приложения iOS без использования исходного кода для приложения
  • Как обрабатывать медленные сетевые подключения с помощью UIAutomation
  • При записи с использованием UIAutomation на устройстве он зависает на «Start Capture ...». Прекрасно работает на Simulator
  • запуск сценария UIAutomation во многих маках?
  • Interesting Posts

    В виде таблицы Как добавить другую пользовательскую ячейку в расширенную ячейку в ios?

    Timer.scheduledTimer не работает в Swift 3

    iOS 9 не поддерживается на Xcode 6.3

    Как представить модальный вид в комплекте спрайтов?

    Ионный вход поиска в панели заголовка

    Создание Launch Screen.xib для iOS8

    Наблюдение свойств объекта с помощью ReactiveCocoa 4 в Swift

    Быстрое импортирование существующих файлов iOS в цель OS X в одном проекте

    Можете ли вы отключить ротацию во всем мире в приложении iOS?

    Невозможно преобразовать значение типа «NSIndexPath» в ожидаемый тип аргумента «NSIndexPath»

    Перезагрузка subview (UICollectionview)

    Запустить приложение Xcode iOS из командной строки

    проблема с fopen в ios 10.3, когда имя файла имеет символы unicode (utf8)

    Как реализовать бесконечную загрузку в виде таблицы или коллекции?

    Лучший способ реализовать «пользовательский пользователь» VoIP на iOS

    PhoneC: Разработка iOS проста с помощью XCode, Swift3, UITableView, cocatouch, давайте создадим приложения для iPhone, iPad и Macbook.