Les tests automatisés de PhoneGap/Cordova apps
Si je veux faire des tests automatisés d'une application PhoneGap (pour l'instant, uniquement sur iOS), quelles sont les options que j'ai (le cas échéant)?
Sélénium aurait été mon premier appel, mais Pouvez-vous utiliser le Sélénium avec une application phonegap? suggère que c'est pas possible. Il semble qu'il y ait un iPhone pilote pour exécuter le Sélénium sur iOS, mais aucune indication comment le faire interagir avec PhoneGap. L'ancien PhoneGap wiki semble impliquer que c'est possible, mais ne dit pas vraiment comment.
J'avais aussi regardé à l'aide de Jasmin le Jasmin-plugin jQuery pour beaucoup la même chose, mais il nécessite la duplication de l'app HTML (et la charge de garder les deux dans la synchro etc).
Vous devez vous connecter pour publier un commentaire.
À l'aide de Sélénium/WebDriver avec PhoneGap/Cordova Android est actuellement pas possible. Nous n'avons ce travail à un point avec une certaine version de WebDriver, mais j'ai eu du mal à arriver à la version actuelle de la WebDriver client de travailler avec des personnalisés WebViews comme le CordovaWebView, qui Cordova/PhoneGap Android est basé sur. Nous sommes encore à essayer de comprendre comment obtenir le nouveau code fonctionne bien avec web personnalisé points de vue, car il n'y a pas de documentation pour cette mesure.
Donc, malheureusement, la réponse est "pas encore, mais nous essayons".
Que récemment nous avons ajouté un exemple sur la façon de tester PhoneGap/Cordova applications à l'aide de l'Open Source du framework de test Appium.
Veuillez vous référer à https://github.com/appium/appium/blob/master/test/functional/webview/gappium.js
Appium fondamentalement traite PhoneGap/Cordova apps applications hybrides (embedded webview). Vous serez en mesure d'automatiser vos tests à l'aide de l'Selenium Webdriver JSON Fil de Protocole qui a la langue liaisons spécifiques pour toutes les plates-formes populaires (Python, Ruby, Java, C#, Obj-c, etc.). Il est même possible de passer des contextes d'application native pour webview à un moment donné (par exemple, si vous souhaitez modifier l'orientation de l'appareil).
Ma solution est QUnit. J'ai créé un "tests" dossier à l'intérieur de mon 'js' dossier, et j'ai extrait tous les QUnit fichiers.
Pour exécuter mes tests, je lance la page html utilisé par QUnit.
J'ai modifié l'actuel iPhone webdrive code à utiliser pour tester phonegap comme application. J'ai mis mon code ici: https://code.google.com/p/selenium-uiwebview/
La raison pour laquelle je suis en train de dire phonegap COMME cause de l'application Phonegap est tout simplement agir comme un pont. Wht j'ai fait dans mon application est créé ma propre plus simple pont.
Mais vous pouvez tout simplement utiliser le même code avec phonegap, comme je l'ai aidé un de mes amis qui. Suffit d'utiliser la dernière version, parce que nous avons eu quelques difficultés avec les anciennes versions de XCode.
J'ai donné une description détaillée sur la page d'accueil du projet. Permettez-moi de savoir comment il fonctionne.
Vous pouvez obtenir quelques conseils de cette intégration continue, le programme d'installation pour phonegap lui-même
https://github.com/filmaj/medic
Ce sont les test exécuté par le précédent projet. Il suffit de mettre la totalité du projet dans un projet phonegap dossier www
https://github.com/apache/incubator-cordova-mobile-spec
Vous pouvez utiliser Telerik du Test Studio pour iOS -- nous soutenir PhoneGap applications! (Divulgation: je suis l'évangéliste pour le Test Studio ligne de produits). Il y a une application gratuite sur l'App Store qui vous donnera de l'enregistrement et de lecture de style de tests, et nous avons aussi un pilote de l'API disponible si vous cherchez à faire des cadre-niveau d'essai. (L'API est en version bêta dès maintenant. Je serais heureux de vous donner accès si vous êtes intéressé.)