Автоматическое тестирование приложений PhoneGap/Cordova
Если я хочу выполнить автоматическое тестирование приложения PhoneGap (пока только на iOS), какие параметры у меня есть (если есть)?
Селен был бы моим первым звонком, но Можете ли вы использовать Selenium с помощью приложения для телефонных разговоров? предполагает, что это невозможно. Похоже, есть драйвер iPhone для запуска Selenium на iOS, но нет указания, как заставить это взаимодействовать с PhoneGap. Старая версия PhoneGap wiki подразумевает, что она возможна, но на самом деле не говорит, как это сделать.
Я также рассматривал использование Jasmine с плагином Jasmine-jQuery для того же, но для этого требуется дублирование приложения HTML (и накладные расходы на сохранение двух в синхронизации и т.д.).
Ответы
Ответ 1
Использование Selenium/WebDriver с PhoneGap/Cordova Android в настоящее время невозможно. У нас действительно была одна работа с определенной версией WebDriver, но у меня возникли проблемы с получением текущей версии клиента WebDriver, работающей с пользовательскими WebView, такими как CordovaWebView, на основе которого основана компания Cordova/PhoneGap Android. Мы все еще пытаемся выяснить, как заставить новый код работать с пользовательскими веб-представлениями, так как до сих пор нет документации для этого.
Итак, к сожалению, ответ на этот вопрос "еще нет, но мы пытаемся".
Ответ 2
В последнее время мы добавили пример того, как тестировать приложения PhoneGap/Cordova с использованием платформы тестирования Open Source Appium.
Обратитесь к https://github.com/appium/appium/blob/master/test/functional/webview/gappium.js
Appium в основном рассматривает приложения PhoneGap/Cordova как гибридные приложения (встроенный веб-просмотр). Вы сможете автоматизировать свои тесты, используя Selenium Webdriver JSON Wire Protocol, который имеет привязки к языку для всех популярных платформ (Python, Ruby, Java, С#, Obj-c и т.д.). Также можно переключать контексты из собственного приложения в веб-просмотр в любой момент времени (например, если вы хотите изменить ориентацию устройства).
Ответ 3
Мое решение QUnit. Я создал папку "tests" в моей папке "js", и я извлек все файлы QUnit.
Чтобы запустить мои тесты, я запускаю html-страницу, используемую QUnit.
Ответ 4
Я изменил текущий код webdrive iPhone, чтобы использовать его для тестирования phonegap как приложения. Я разместил здесь свой код: https://code.google.com/p/selenium-uiwebview/
Причина, по которой я говорю, что телефонное приложение LIKE вызывает Phonegap, просто действует как мост. Что я сделал в своей реализации, создан мой собственный более простой мост.
Но вы можете просто использовать тот же код с телефонной связью, поскольку я помог одному из моих друзей сделать это. Просто используйте последнюю версию, потому что у нас были проблемы со старыми версиями XCode.
Я дал подробное описание на главной странице проекта. Сообщите мне, как это работает.
Ответ 5
Вы можете получить некоторые подсказки из этой настройки непрерывной интеграции для самой телефонной книги.
https://github.com/filmaj/medic
Это тест, выполненный предыдущим проектом. Просто поместите весь проект в проектную папку www phone
https://github.com/apache/incubator-cordova-mobile-spec
Ответ 6
Вы можете использовать Telerik Test Studio для iOS - мы поддерживаем приложения PhoneGap! (Раскрытие информации: я являюсь евангелистом линейки продуктов Test Studio.) бесплатное приложение в App Store, которое даст вам запись и тесты стиля воспроизведения, и у нас также есть API-драйвер, доступный, если вы хотите провести тестирование на уровне структуры. (API сейчас в бета-версии. Я был бы рад предоставить вам доступ к нему, если вы заинтересованы.)