Articles

Comparaison des outils de test d’automatisation mobile : Appium, TestComplete, UI Automator, SeeTest, Robotium, XCUITest et plus

Contenu

Durée de lecture : 14 minutes

Les tests mobiles sont plus complexes que les tests web. Alors que ce dernier concerne différents navigateurs et une variété de versions, le test mobile se concentre sur les versions Android et iOS et les résolutions d’écran mobile. Outre le stock Android, les ingénieurs d’assurance qualité doivent faire face à des interfaces utilisateur personnalisées. La plupart des fabricants d’appareils les ajoutent à l’Android standard pour offrir des fonctionnalités supplémentaires et un design plus distinctif. Parmi les exemples célèbres, citons l’OxygenOS de OnePlus et le One UI de Samsung.

Avec cet article, nous souhaitons vous faciliter la vie en comparant les outils de test d’automatisation mobiles dédiés. Nous avons inclus les recommandations d’experts internes et externes qui donnent leur avis sur les outils d’automatisation mobile.

Comment tester les applications mobiles

Alors, comment se déroulent les tests mobiles ? Les ingénieurs AQ utilisent des outils de test d’automatisation mobile pour faciliter les interactions des codes de test avec l’application concernée. La question est de savoir comment exécuter les tests d’automatisation mobiles. Il existe trois options.

A travers des appareils mobiles locaux en direct. Avec de vrais appareils connectés en USB, les AQ peuvent tester l’opérabilité d’une application du point de vue de l’utilisateur final. Ils peuvent accélérer le processus en exécutant des tests en parallèle sur plusieurs appareils Android. Bien qu’ils prennent beaucoup de temps en raison de la nécessité de paramétrer manuellement l’infrastructure, ces tests fournissent les résultats les plus précis. Sinon, vous pouvez utiliser des services de test en nuage.

Utiliser un nuage d’appareils réels. Pour étendre la couverture des appareils, les AQ effectuent des tests dans un environnement de test distant – ferme d’appareils aka nuage d’appareils. Préinstallées en OS et en navigateurs, les fermes d’appareils fournissent aux testeurs un accès à des appareils physiques multi-versionnés. Les testeurs disposent d’un tableau de bord où ils peuvent gérer tous les appareils connectés. Sauce Labs et BrowserStack sont des nuages de périphériques très utilisés.

Via émulateur Android / simulateur iOS. Les AQ testent également les applications mobiles via un logiciel qui imite un appareil mobile sur leur bureau. En particulier, l’émulateur Android imite à la fois les environnements logiciels et matériels de l’appareil cible, tandis que le simulateur iOS – uniquement le logiciel mobile. C’est pourquoi vous avez besoin d’un ordinateur Apple original pour les tests. Parmi les principaux avantages des émulateurs, Alexander Kot, ingénieur en automatisation mobile chez AltexSoft, cite leur capacité à passer très rapidement d’un appareil à l’autre. Anastasiya Nalyhach, ingénieur en automatisation des tests chez EPAM Systems, ajoute que les émulateurs lui permettent de lancer rapidement des tests locaux sur un PC lorsqu’aucun appareil réel n’est disponible. Cependant, les émulateurs ne sont pas aussi fiables que les appareils réels.

Émulateur Android dans Android Studio

Émulateur Android dans Android Studio

Émulateur Android dans Android Studio

Pour comprendre comment tous ces composants constituent le processus de test, nous devons d’abord comprendre comment fonctionne le test d’automatisation mobile dans son ensemble.

Comment fonctionne le test d’automatisation mobile

Pour développer et tester les appareils mobiles, les IDE suivants sont utilisés : Android Studio et Apple Xcode. Ces IDE disposent de tous les instruments nécessaires pour travailler avec du code, notamment des débogueurs de code (par exemple Android Debug Bridge), des émulateurs et des simulateurs.

Une interface qui permet la communication entre un appareil mobile et votre ordinateur est appelée pilote mobile. Les pilotes officiels d’Android sont UI Automator et Espresso. Développés par Google, ces deux pilotes sont inclus dans la bibliothèque de support de test Android, bien documentée. Par ailleurs, il existe des pilotes tiers comme Robotium et Selendroid (Selenium pour Android). Quant à iOS, le pilote XCUITest est livré avec Xcode.

Si vous avez affaire à une application mobile disponible à la fois sur iOS et Android, écrire des tests distincts pour chaque OS prendra un certain temps. Vous pouvez permettre la réutilisation du code en profitant d’un outil multiplateforme. Ainsi, vous n’écrivez le code qu’une seule fois et il est compatible avec les deux systèmes d’exploitation. L’exemple le plus populaire d’un outil de test mobile multiplateforme est Appium.

Trois façons d'utiliser un outil de test d'automatisation mobile

Trois façons d'utiliser un outil de test d'automatisation mobile. tool

Trois façons d’utiliser un outil de test d’automatisation mobile

Résumons l’ensemble du processus en utilisant Appium comme exemple. Une fois le code développé, le client Appium envoie des commandes au serveur Appium via son API. À son tour, Appium convertit les commandes dans le format accepté par le cadre de test natif de la plateforme correspondante (UIAutomator, XCUITest) et, par conséquent, les commandes initiales sont exécutées dans l’application testée à l’intérieur d’un simulateur ou d’un émulateur. Vous pouvez également utiliser un nuage de dispositifs comme Sauce Labs, qui dispose de tous les dispositifs nécessaires préinstallés pour vous. Il vous suffit donc de vous connecter à la plateforme cloud. Dans le cas où vous décidez de conserver des appareils réels, vous devrez vous connecter et les configurer vous-même.

Quand automatiser les tests mobiles

Souvent, les tests mobiles sont effectués manuellement en raison de la complexité de l’automatisation de ce processus. Ses actions sur l’écran tactile, comme le défilement et le tirage, sont assez délicates à automatiser. Distinguons les cas où il est raisonnable d’automatiser les tests mobiles et ceux où il est plus sage de s’en tenir aux vérifications manuelles.

Similairement aux tests web, il existe de multiples scénarios pour l’assurance qualité automatisée des apps :

1. Les projets à long terme. L’automatisation vaut la peine à long terme, si vous prévoyez de développer et de maintenir l’app en permanence.

2. Contrôles de maintenance. Si une application mobile s’approvisionne en données auprès d’un serveur distant via une API, la synchronisation de l’app doit être contrôlée quotidiennement. Souvent, des changements ont lieu côté serveur, ce qui entraîne différents écrasements comme des échecs de connexion ou des échecs d’affichage de certains éléments à l’écran.

3. Tests de fumée. Si nous avons affaire à une application autonome qui n’utilise pas de ressources externes, nous sautons l’étape précédente et passons tout de suite aux tests de fumée. Effectué avant la sortie, il s’agit d’une vérification superficielle des fonctions de base.

4. Tests de régression. C’est la vérification la plus approfondie exécutant tous les tests de routine qui peuvent être automatisés. L’automatisation est particulièrement rentable pour les régressions à fort volume.

5. Pipelines d’intégration continue. Comme l’intégration continue tourne autour des tests automatisés uniquement, il n’y a pas d’autre option ici.

Mais n’oubliez pas les tests manuels. Il sera plus précis en termes d’interruptions comme les textes entrants, les appels, les notifications push, etc. Il s’agit également de tester comment l’application se comporte en fonction des différents types de connexion Internet (3G, LTE, etc.) ainsi que hors ligne.

Donc, il est important d’avoir des tests mobiles manuels et automatisés. Alors que les tests manuels se concentrent sur les tests exploratoires ou d’utilisabilité, les tests automatisés s’occupent des tests fonctionnels hautement répétables. Pour plus de détails sur les tests manuels vs automatisés, consultez notre article dédié.

En outre, nous faisons un tour d’horizon des outils qui vous aideront à transformer les tests manuels de votre application en tests automatisés. Pour en savoir plus sur les outils généraux de test automatisé, lisez notre article sur ce sujet. Ici, nous nous concentrons sur les tests mobiles, même si certains acteurs resteront car ils prennent en charge les tests web et mobiles.

Outils de test open-source Android et iOS

Outils de test open-source Android et iOS

Outils d’automatisation mobile Android

Il existe de multiples outils populaires pour écrire des tests automatisés pour Android et émuler le comportement des utilisateurs dans l’application. La première chose à vérifier sont les outils que Google lui-même a construit pour son système d’exploitation, UI Automator et Espresso. Si vous êtes habitué à Selenium dans les environnements web, il en existe une version mobile – Selendroid. Vous pouvez également consulter le populaire et facile à utiliser Robotium, qui est soutenu par une grande communauté open source.

Donc, nous allons commencer par comparer deux outils de test Android natifs – UI Automator et Espresso.

Espresso et UI Automator : un tandem pour les tests Android natifs

Initialement conçu pour les développeurs, Espresso nécessite un accès au code source. Ainsi, il fournit des tests en boîte blanche contrairement à UI Automator. Il prend en charge les applications Android à partir de la version 2.3. UI Automator a été publié plus tard, il maintient donc Android 4.3+.

Il y a une raison pour laquelle Google conserve les deux. Chaque framework a quelques lacunes que l’autre comble. Alors qu’Espresso ne peut fonctionner qu’à l’intérieur du contexte de notre application de test, UI Automator est capable de vérifier les interactions de l’application concernée avec d’autres apps. Les frameworks ne sont pas interchangeables, mais ils se complètent. Ainsi, un meilleur moyen est d’utiliser les deux frameworks pour tester votre application mobile.

Les avantages d’Espresso et d’UI Automator :

  • Vitesse des tests grâce à la synchronisation du code (Espresso est plus rapide)
  • Fiabilité : maintenue par Google lui-même. Si quelque chose casse, c’est réparé presque immédiatement
  • Enregistreur de test intégré (uniquement pour Espresso)
  • Une communauté active où les développeurs contribuent et répondent constamment aux questions

Espresso et UI Automator contre:

  • Prise en charge limitée des langages : Java et Kotlin.
  • Les contrôles personnalisés nécessitent de bonnes compétences en programmation et une compréhension approfondie du fonctionnement d’Android.

UI Automator Viewer

UI Automator Viewer

UI Automator Viewer, Source : Arseny Batyrov

Les deux Selendroid et Robotium ont été développés avant les pilotes officiels. Cependant, ils ne sont pas aussi bien supportés que les outils de Google.

Selendroid : Outil Selenium pour les tests de compatibilité Android

Selendroid est un outil d’automatisation mobile de Selenium, uniquement orienté vers Android. Mais en utilisant ios-driver – une API Selenium WebDriver – avec Selendroid, vous pourrez également tester les applications iOS. Ecrits sur l’API client Selenium Web Driver, les tests Selendroid sont totalement intégrés aux frameworks Selenium actuels. En utilisant Selenium Inspector, un outil de développement de cas de test, Selendroid surveille l’état actuel de l’interface utilisateur de l’application.

Les avantages de Selendroid :

  • La fonctionnalité de branchement à chaud permet de débrancher les appareils sans interrompre le test. En fin de compte, elle augmente le nombre d’appareils qui peuvent être testés simultanément.
  • Il a une haute compatibilité avec le protocole JSON Wire et Selenium 3 Ready.
  • Compatibilité ascendante. Par exemple, il peut prendre en charge l’API 10 (version 2.3.3) à l’API 19 (version 4.4) d’Android.
  • Aucun ajustement de l’app n’est nécessaire pour l’automatiser.
  • Il y a une app WebView pilote Android intégrée.

Les inconvénients de Selendroid:

  • Il n’y a pas la possibilité d’automatiser le test des activités en dehors de l’app comme la caméra, les cartes, etc.
  • Lent : il est difficile à utiliser sur certaines machines avec moins de 4 Go de RAM.

Robotium : bibliothèque de tests d’interface utilisateur en boîte noire pour les applications Android

Robotium, l’un des premiers outils de tests automatisés pour Android, est fréquemment utilisé. Comme il est utilisé pour les tests en boîte noire, il n’est pas nécessaire de disposer de données supplémentaires sur la structure de l’application ou les classes exécutées. La seule chose que Robotium a besoin de connaître est le nom de la classe fondamentale et la manière de s’y connecter. Java est le langage privilégié pour composer les tests Robotium.

Les avantages de Robotium.

  • Il permet de composer des situations de test de fonction, de framework et d’acceptation utilisateur.
  • Il dispose d’une grande communauté : De nombreux développeurs open-source contribuent à introduire davantage de fonctionnalités dans les versions ultérieures.

Nous avons interrogé Myhailo Skrypchuk, développeur chez Brandnic, sur leur utilisation de Robotium pour tester une application de générateur de nom d’entreprise : « Nous utilisons l’outil dans les tests de fonctionnement pour évaluer si l’opération a été réalisée en utilisant le bon flux de données. De même, dans les tests de sécurité, nous trouvons et éliminons les failles et les vulnérabilités, et lançons différentes cyberattaques fictives. Dans les tests de performance, nous examinons l’application avec les besoins en mémoire et sa vitesse pour accomplir la tâche. »

Les inconvénients de Robotium :

  • Liée au processus d’une seule application, à l’image d’Espresso.

« Si votre application en appelle une autre – Robotium ne peut pas la voir et y effectuer une action », ajoute Myhailo.

  • Aucune possibilité de verrouiller/déverrouiller un smartphone ou une tablette.
  • Aucune fonction d’enregistrement et de lecture
  • Échec à fournir des captures d’écran.

Outils de test d’automatisation mobile iPhone

Si vous êtes pris par les tests d’applications iPhone, vérifiez les options dont vous disposez. Tout se résume à XCUITest – l’outil de test d’interface utilisateur officiel d’Apple. Cela dit, Google propose une alternative intéressante – EarlGrey, que vous trouverez peut-être plus adaptée à vos besoins.

XCUITest : des méthodes natives pour travailler avec l’interface utilisateur d’iOS

XCUITest fonctionne dans l’environnement Xcode et ses tests doivent être écrits en Swift ou en Objective-C. Son support de version commence avec iOS 9.

XCUITest pros :

  • Exécution parallèle distribuée des tests
  • Enregistreur de tests intégré pour les tests simples, les éléments d’interface utilisateur et leurs caractéristiques

XCUITest contre:

  • Apple est plus lent que Google en termes de réponse aux bugs
  • Faible documentation : Il ne comprend pas une description de toutes les méthodes et de la façon de les utiliser.
  • Petite communauté : Vous aurez du mal à obtenir une réponse à votre question.
  • La vitesse d’exécution des tests est lente par rapport aux tests Android.
  • Les mises à jour du framework sont rares.
  • Les tests prêts à l’emploi uniquement sur des simulateurs, nécessitent des utilitaires supplémentaires pour fonctionner avec des appareils réels. L’un d’eux est Facebook WebDriverAgent (WDA). Exécuté sur un simulateur ou un appareil réel, WDA transfère les commandes via l’API à XCUITest.

EarlGrey : la réponse de Google à XCUITest

Développé par Google en 2016, EarlGrey est très similaire à Espresso. Google lui-même utilise l’outil pour les tests fonctionnels d’applications iOS natives comme YouTube, Google Agenda, Google Photos, Google Translate, etc. Vous pouvez ajouter Earlgrey à votre projet Xcode manuellement ou à l’aide d’un gestionnaire de dépendances.

Par opposition à XCUITest, ce framework d’automatisation de l’interface utilisateur partage le même processus avec l’application : Les scripts de test attendent que des événements spécifiques de l’interface utilisateur se produisent avant de lancer directement une interaction avec l’interface utilisateur de l’application. Ainsi, le test peut affecter la mémoire partagée et modifier le comportement de l’application au moment de l’exécution. Bien qu’EarlGrey se synchronise automatiquement avec l’interface utilisateur et les demandes du réseau, il permet toujours d’implémenter des timings personnalisés.

Les avantages d’Earl Grey par rapport à XCUITest :

  • Apportent les fonctionnalités de synchronisation d’Espresso aux tests iOS
  • Support des périphériques réels

Les inconvénients d’Earl Grey :

  • Des rapports statistiques anonymes renvoyés à Google
  • Seul le test d’une seule application

Outils de test d’automatisation mobile multiplateforme

Des outils de test mobile qui fonctionnent pour les deux OS vous feront gagner beaucoup de temps et d’efforts. Bien qu’il soit facile de se perdre dans la masse de choix, nous avons sélectionné les cinq meilleurs frameworks – gratuits et sous licence – qui peuvent vous aider à développer des tests automatisés mobiles multiplateformes. Appium est la première chose qui vient à l’esprit. Mais il n’est pas si facile de s’y retrouver, surtout si vous ne tutoyez pas Selenium. Parfois, il est préférable de payer un supplément pour un automate sans script. Nous allons passer en revue les deux options à travers les outils de cette liste.

Outils de test d'automatisation mobile multiplateforme comparés

Outils de test d’automatisation mobile multiplateforme comparés

Appium : un framework de test d’interface utilisateur mobile polyvalent

Si vous maîtrisez Selenium, Appium sera une promenade de santé pour vous. Il s’agit essentiellement d’un Selenium WebDriver conçu pour tester les appareils mobiles. La fonction principale du serveur Appium est de recevoir des requêtes de test dans un format JSON et de les convertir en commandes qui peuvent ensuite être acceptées par les frameworks de test natifs.

Comment fonctionne le serveur Appium

Comment fonctionne le serveur Appium

Comment fonctionne le serveur Appium

Les tests basés sur Appium et WebDriver peuvent être exécutés à l’aide du framework d’automatisation des tests WebDriverIO.

Ce sont des liaisons WebDriver pour Node.js. WDIO dispose de son propre exécuteur de tests et est facilement configurable. Son interface en ligne de commande est livrée avec un bel utilitaire de configuration qui aide à créer le fichier de configuration en moins d’une minute. Il donne également un aperçu de tous les paquets tiers disponibles, comme les adaptations de framework, les rapporteurs et les services, et peut les installer.

Les avantages d’Appium. Appium est de loin le framework de test UI mobile le plus universel.

  • Il prend en charge l’automatisation sur une variété de plateformes : iOS mobile, Android mobile et Windows desktop.
  • L’outil automatise tous les types d’applications : natives, web mobile et hybrides.
  • Appium est compatible avec tous les langages de programmation populaires : Ruby, Python, Java, JavaScript, PHP, C# et RobotFramework. Avec des clients écrits dans chacun de ces langages, il n’y a pas de limites en termes d’exécutants et de frameworks de test. C’est en fait inhérent à la philosophie d’Appium – ne placez aucune restriction sur votre environnement de test afin que vous puissiez le gérer comme vous le décidez.
  • Contrairement à d’autres outils d’automatisation, Appium fournit une interface stable basée sur WebDriver gardant vos tests faciles malgré toutes les mises à jour.

Exemple de mise en œuvre d'Appium pour Android

Exemple de mise en œuvre d'Appium pour Android

Exemple de mise en œuvre d’Appium pour Android, Source : Thomas Hansson

Exemple de mise en œuvre d'Appium pour iOS

Exemple de mise en œuvre d’Appium pour iOS, Source : Thomas Hansson

Appium contre :

  • Anastasiya Nalyhach note qu’Appium n’interagit pas directement avec une app, mais utilise le protocole HTTP pour envoyer des commandes. Alexander Kot ajoute à cela :  » L’exécution des commandes prend un certain temps en raison d’une longue chaîne d’interaction sous le capot d’Appium : Après avoir lancé un appareil et créé une session, Appium établit une connexion avec le serveur WebDriverAgent. Ensuite seulement, le serveur WebDriverAgent communique avec le cadre de test natif d’Apple afin d’exécuter des commandes sur l’appareil. »
  • Sans accès au code source, la modification de l’état de l’application pose problème. En outre, Appium ne permet pas de mocker la partie back-end tout en vérifiant l’interface utilisateur. Au final, assurez-vous d’avoir un matériel puissant car Appium utilise beaucoup de ressources.

Calabash : Cadre de test Behavior Driven Development

Si Xamarin est plus proche de votre cœur, optez pour Calabash. En 2017, Xamarin a cessé de supporter Calabash, et avec l’aide de la communauté, Calabash s’est transformé en un outil open-source. Il existe des bibliothèques pour chaque plateforme : Calabash iOS et Calabash Android.

Calabash permet de s’assurer qu’une application est composée des bonnes fonctionnalités, scénarios et définitions d’étapes, mais aussi de savoir si elle s’exécute avec les bonnes entrées.

Les avantages de Calabash :

  • Etant orienté BDD, Calabash effectue des tests de développement basés sur le fonctionnement de l’application.
  • Par opposition à Appium, agnostique en termes d’outils, Calabash est étroitement couplé à Cucumber, orienté comportement, et l’utilise pour définir des scénarios de test dans un langage simple. Cela le rend compréhensible même pour les membres non techniques de l’équipe.

Calabash contre:

  • Calabash permet des interactions avec l’app uniquement pour un cadre de test basé sur Ruby.
  • Il n’y a pas de fonctions d’enregistrement et de lecture.
  • Le débogage des scripts de test et la maintenance des tests sont les principaux problèmes. Avec l’augmentation des appareils testés, il devient difficile de maintenir les fichiers de données de test.
  • L’écriture de scripts de test d’automatisation pour Calabash nécessite un testeur qualifié et compétent.

SeeTest : plateforme commerciale de test continu

SeeTest d’Experitest est le premier outil de test multiplateforme commercial de notre liste. Disponible avec une période d’essai de 30 jours, le plan automate de SeeTest coûte à l’utilisateur 199 $ par mois s’il paie un an à l’avance ou 249 $ chaque mois. Alors pourquoi payer s’il existe des outils gratuits ?

Les avantages de SeeTest :

  • Capacités d’Appium intégrées dans une interface pratique avec des fonctionnalités telles que le reflet de l’appareil, l’enregistreur de test, l’espion d’objet et le retour visuel
  • Couverture d’automatisation étendue, y compris la numérisation de codes-barres & check, les fonctionnalités audio, la simulation GPS et TouchID, ou les éléments personnalisés tels que les curseurs, les sélecteurs, les tableaux, les gestes et toute interface utilisateur complexe.
  • L’utilisation de plug-ins pour développer et exécuter des tests sur des appareils réels directement à partir d’Eclipse ou IntelliJ
  • Accéder à plus de 1000 appareils mobiles dans le cloud et exécuter des centaines de tests en parallèle
  • Des rapports de test détaillés avec des captures d’écran, des vidéos et des fichiers journaux.

SeeTest Reporter

SeeTest Reporter

SeeTest Reporter

En résumé , SeeTest s’intègre parfaitement dans le processus de CI car il permet de hiérarchiser, de planifier et de distribuer plusieurs tests en parallèle sur les appareils et les OS pertinents pour le build spécifique.

Les inconvénients de SeeTest. Il y a toujours un mais. Dans le cas de SeeTest, c’est son prix donc l’outil n’est pas adapté aux projets à petite échelle. De plus, l’outil n’est pas open source donc il n’y a pas de place pour des ajustements.

TestComplete : un module propriétaire de test mobile sans script

TestComplete est un produit de SmartBear, un leader de l’automatisation des tests logiciels. Il propose des modules automatisés pour les tests mobiles, de bureau et web. Avec TestComplete, vous pouvez créer des tests en les enregistrant ou en modifiant les commandes de test dans ses panneaux et éditeurs. Vous exécutez les tests au sein de la plateforme ou les exportez pour les exécuter sur des applications externes.

Les pros de TestComplete :

  • Il existe un large éventail de langages de programmation (par exemple JavaScript, Python, Jscript.)
  • L’outil d’enregistrement et de relecture sans script permet d’enregistrer les gestes multi-touch (glisser, pincer, glisser, déposer ou faire défiler) et de les lire. Steve Pritchard, consultant informatique pour Anglo Liners, affirme que ces tests sont aussi complets que les tests manuels.

TestLecture complète des gestes sur écran tactile

TestLecture complète des gestes sur écran tactile-.screen gestures

TestComplete playback of touch-screen gestures

  • Des points de contrôle spécifiques vérifient l’état de l’application pendant l’exécution du test.
  • Des contrôles automatiques valident les aspects clés. Steve le confirme : « Grâce aux informations en temps réel que l’outil produit, nous sommes en mesure de suivre la progression et l’état de nos pages depuis n’importe quel appareil simultanément. »
  • Il existe une pré-intégration avec l’outil de test d’API SoapUI.

Les inconvénients de TestComplete:

  • Cette solution est coûteuse. Pour un module mobile ainsi que la plateforme elle-même, TestComplete vous facturera 2 299 dollars par an au minimum. Et ce, uniquement pour un seul appareil informatique. Des extensions telles que l’exécution de tests en parallèle, les reprises de tests en vidéo, la reconnaissance visuelle assistée par l’intelligence artificielle, les audits automatiques de sites Web en matière de performances, d’accessibilité et de référencement ont un prix supplémentaire. En outre, TestComplete facture séparément la formation et la certification. En cas d’achat, les clients de TestComplete ont accès au portail de gestion des cas où ils peuvent demander de l’aide. Avant de prendre un quelconque engagement, vous pouvez l’essayer pendant un mois.
  • Les tests iOS avec TestComplete nécessitent l’installation d’outils de virtualisation matérielle sur votre Mac.

Tricentis Tosca : moteur mobile 3.0 basé sur un modèle sous licence

Dans le cadre de l’installation standard de Tricentis Tosca, le moteur mobile Tosca 3.0 doit être explicitement sélectionné via la configuration personnalisée. Couplé à Appium, Tricentis vous permet de tirer parti de la puissance d’Appium sans avoir à gérer sa complexité technique. Par ailleurs, le Tosca Mobile Engine 3.0 utilise des composants des outils AndroidSDK et Xcode. Il est intégré aux nuages de dispositifs : Perfecto, Mobile Labs, Sauce Labs et TestObject. Ainsi, vous ne dépendez pas des environnements de test mais pouvez les engager lorsque le besoin s’en fait sentir.

Tricentis Tosca pros. Similaire à TestComplete, Tricentis permet l’automatisation des tests sans script en même temps que l’écriture manuelle du code, ce qui le rend facile à utiliser. Parmi les fonctionnalités de Tricentis dont vous pouvez bénéficier, citons :

  • Génération synthétique de données de test,
  • Tests basés sur les risques,
  • Conception de cas de test,
  • Exécution distribuée,
  • Virtualisation de services,
  • Gestion et analyse des tests,
  • Intégrations d’outils DevOps et de gestion du cycle de vie des applications
  • Déploiement et démarrage automatisés avec des tests lancés automatiquement et aucune interaction manuelle requise.

Tricentis Tosca contre : Tosca a une tarification personnalisée qui est du côté élevé. Prenez directement contact pour le découvrir par vous-même.

Défis des tests mobiles (par rapport aux tests web)

En termes de déploiement de fonctionnalités, le développement mobile s’appuie sur l’ensemble des fonctionnalités web existantes. Ainsi, la création d’une application de soutien devrait être plus facile. Mais cela ne concerne pas le processus de test. Ici, les tests mobiles commencent dès le début, quelle que soit l’exhaustivité des tests Web. Maintenant, nous allons faire un tour d’horizon des principales difficultés des tests mobiles par rapport aux tests web.

Fragmentation des appareils. Comme dans le cas des tests web, où nous ne traitons que les PC et les ordinateurs portables, les tests mobiles couvrent les téléphones, les tablettes, les smartwatches, etc. Ainsi, la manipulation de nombreux fabricants de matériel avec des tailles d’écran variées et des interfaces utilisateur personnalisées, complique le processus de test.

Double travail. Les tests Web ne traitent qu’un seul environnement – un navigateur où la multi-version n’est pas un problème aussi important que pour les tests mobiles. En gardant un œil sur les systèmes d’exploitation mobiles Android et iOS, les testeurs doivent trouver deux types de localisateurs d’objets de page et mettre en œuvre des tests distincts pour des fonctionnalités similaires. Prenant en charge deux ensembles d’infrastructure à la fois, l’AQ doit être prête à toute mise à jour push susceptible de provoquer des ruptures de test.

Mise en correspondance des appareils. Comme toujours, iOS nécessite un ordinateur Apple pour écrire des tests automatisés.

Vitesse des tests. Les tests web sont effectués directement dans le navigateur. Cela contraste avec les tests mobiles où le code passe par une plus longue chaîne d’actions avant de pouvoir être exécuté sur l’appareil cible. Cela entraîne des retards dans le processus de test mobile.

Outillage et support. Contrairement à l’automatisation web, le mobile dispose d’une communauté moins mature incapable de répondre à certaines questions. Son outillage est encore en train d’évoluer.

L’automatisation mobile est un outil de développement.

Laisser un commentaire

Votre adresse e-mail ne sera pas publiée. Les champs obligatoires sont indiqués avec *