Aller au contenu

Questions fréquemment posées

Qu’est-ce que Repeato ? Pourquoi un autre outil de test ?

Section intitulée « Qu’est-ce que Repeato ? Pourquoi un autre outil de test ? »

Repeato est un outil d’automatisation des tests mobiles qui repose sur la vision par ordinateur et l’apprentissage automatique. Ainsi, le testeur n’a pas à se soucier de l’architecture sous-jacente de l’application (identifiants, structure de la mise en page), ce qui simplifie la création des tests. Au lieu d’écrire du code, les tests peuvent être enregistrés via un enregistreur de tests. Pour chaque interaction de clic, une empreinte visuelle est générée afin de permettre au moteur d’exécution de retrouver ultérieurement l’élément d’interface. Pour chaque exécution, un rapport peut être généré, présentant une représentation visuelle étape par étape des interactions automatisées avec l’interface.

Comment Repeato fonctionne-t-il par rapport aux autres outils de test mobile ?

Section intitulée « Comment Repeato fonctionne-t-il par rapport aux autres outils de test mobile ? »

Repeato adopte une nouvelle approche du test mobile et fonctionne fondamentalement différemment des autres frameworks de test d’interface :

Repeato fonctionne entièrement à partir des données de pixels et ne tient pas compte de la structure sous-jacente de l’interface. Il voitessentiellement ce qu’un testeur verrait, grâce à la vision par ordinateur et à l’apprentissage automatique. Les assertions sont créées en définissant des empreintes visuelles des éléments, que l’algorithme de vision par ordinateur peut ensuite retrouver. Cela fonctionne même lorsque votre design ou le ratio d’écran de l’appareil change légèrement.

Quel est le principal avantage de Repeato par rapport aux autres solutions d’automatisation des tests ?

Section intitulée « Quel est le principal avantage de Repeato par rapport aux autres solutions d’automatisation des tests ? »

Repeato met principalement l’accent sur la facilité d’utilisation, la rapidité de création et d’exécution des tests, ainsi que sur leur stabilité. De plus, contrairement à de nombreux autres outils de test, vous pouvez effectuer des tests sur des appareils réels indépendamment des émulateurs ou simulateurs.

Repeato n’est PAS le choix idéal pour vous si…

Section intitulée « Repeato n’est PAS le choix idéal pour vous si… »
  • … vous recherchez un outil open source.

    Repeato est un logiciel propriétaire et n’est donc pas gratuit, mais il offre des avantages importants tels qu’un support professionnel, une interface et une UX soignées, une assurance qualité professionnelle et un processus d’innovation guidé.

  • … vous recherchez un outil fourni avec sa propre ferme physique d’appareils.

    Repeato propose des appareils cloud, mais il s’agit de simulateurs et non d’appareils réels.

Repeato propose-t-il une ferme ou des pools d’appareils, ou tous les tests s’exécutent-ils sur mes appareils locaux ?

Section intitulée « Repeato propose-t-il une ferme ou des pools d’appareils, ou tous les tests s’exécutent-ils sur mes appareils locaux ? »

Repeato peut se connecter à vos appareils Android ou iOS branchés localement, ainsi qu’aux émulateurs et simulateurs exécutés localement. Il propose également une grande variété d’appareils cloud.

Notre objectif principal reste de fournir un outil d’automatisation des tests sans code qui fonctionne réellement et efficacement pour toutes sortes de cas de test. Nous suivons donc une stratégie consistant à « tester rapidement autant de fonctionnalités de l’application que possible ».

D’autres outils (comme Sauce Labs, Firebase, Appium, etc.) facilitent l’exécution des tests sur de nombreux appareils. Ils suivent une stratégie consistant à « tester l’application sur autant d’appareils différents que possible », mais, comme vous avez peut-être pu le constater, leur mise en œuvre demande un investissement important.

Voici ce que nous recommandons généralement à nos clients :

  1. Dressez la liste des fonctionnalités que vous souhaitez couvrir par des tests automatisés
  2. Identifiez les fonctionnalités qui dépendent du matériel de l’appareil : appareil photo, vidéo, audio, GPS, batterie, capteurs, etc. Essayez d’automatiser ces fonctionnalités avec un outil tel qu’Appium, Espresso ou XCUItest, afin de pouvoir exécuter ces fonctionnalités sur une ferme d’appareils
  3. Couvrez le reste de vos fonctionnalités avec Repeato et vous économiserez ainsi beaucoup de temps et d’argent. Selon le type de votre application, vous pourriez même constater que certaines fonctionnalités ne peuvent être testées qu’avec Repeato, en raison des limitations du framework choisi à l’étape 2 ci-dessus.

Puis-je utiliser des émulateurs ou des simulateurs au lieu d’appareils réels ?

Section intitulée « Puis-je utiliser des émulateurs ou des simulateurs au lieu d’appareils réels ? »

Oui, avec Repeato, vous pouvez également utiliser des émulateurs ou des simulateurs au lieu d’appareils physiques.

Repeato prend-il en charge les appareils iOS réels ?

Section intitulée « Repeato prend-il en charge les appareils iOS réels ? »

Oui.

Oui.

Les tests peuvent-ils être rejoués sur d’autres systèmes d’exploitation (par exemple, un test Android sur iOS) ?

Section intitulée « Les tests peuvent-ils être rejoués sur d’autres systèmes d’exploitation (par exemple, un test Android sur iOS) ? »

En principe, oui, selon les différences entre vos applications iOS et Android.

Si j’enregistre un test sur un appareil avec un ratio d’écran de 2:1, puis-je l’exécuter en 16:9 ?

Section intitulée « Si j’enregistre un test sur un appareil avec un ratio d’écran de 2:1, puis-je l’exécuter en 16:9 ? »

Oui.

Puis-je modifier les entrées d’un test sans le réenregistrer ? (par exemple, remplacer le nom d’utilisateur enregistré par un autre)

Section intitulée « Puis-je modifier les entrées d’un test sans le réenregistrer ? (par exemple, remplacer le nom d’utilisateur enregistré par un autre) »

Oui, vous pouvez facilement modifier les étapes d’un test.

Puis-je générer aléatoirement des données d’entrée pour un test ?

Section intitulée « Puis-je générer aléatoirement des données d’entrée pour un test ? »

Oui, par exemple, pour créer de nouveaux comptes, vous pouvez générer des noms d’utilisateur ou des adresses e-mail aléatoires.

Puis-je enregistrer un test sur une vue de l’application et le rejouer sur une autre ?

Section intitulée « Puis-je enregistrer un test sur une vue de l’application et le rejouer sur une autre ? »

Oui, c’est possible.

Repeato vous permet de créer des espaces de travail. Chaque espace de travail peut se trouver dans son propre répertoire, qui peut facilement être versionné dans un dépôt (Git ou un autre logiciel de gestion de versions). Découvrez comment commencer

Sur votre propre disque, pour une confidentialité maximale. Vous pouvez conserver vos données et les utiliser comme bon vous semble. Toutes les données sont stockées dans un format ouvert, facile à lire et à convertir. Si vous le souhaitez, vous pouvez synchroniser les données de test au sein de votre équipe via Git ou un autre système de gestion de versions. Il est également possible de publier les rapports de test dans le cloud pour faciliter leur partage.

Avec le forfait mensuel, vous pouvez mettre le service en pause à tout moment, jusqu’à 2 fois par an. Cette limite s’explique par le travail administratif qu’elle implique pour l’équipe Repeato.

Je n’ai pas le budget nécessaire pour Repeato, que puis-je faire ?

Section intitulée « Je n’ai pas le budget pour Repeato, que puis-je faire ? »

Nous comprenons.

Sur notre page d’assistance, nous proposons des ressources qui peuvent vous aider à obtenir ce budget.

Si cela ne suffit pas, n’hésitez pas à nous contacter pour discuter de votre situation : nous sommes certains de pouvoir trouver une solution qui vous conviendra !

Puis-je intégrer Repeato à mon flux d’intégration continue ?

Section intitulée « Puis-je intégrer Repeato à mon flux d’intégration continue ? »

Oui. Repeato s’exécute sans interface, comme application Node.js, sur pratiquement tous les systèmes.

Repeato fonctionne-t-il avec des frameworks d’applications tels que Flutter ou React Native ?

Section intitulée « Repeato fonctionne-t-il avec des frameworks d’applications comme Flutter ou React Native ? »

Oui, Repeato prend en charge un large éventail de frameworks : Flutter, React Native, Xamarin, Unreal Engine et bien d’autres.

Oui.

Quels sont les inconvénients d’utiliser Espresso pour les tests ?

Section intitulée « Quel est le problème avec l’utilisation d’Espresso pour les tests ? »

Pas grand-chose, mais il y a un problème majeur : créer des tests prend beaucoup de temps : trouver le bon ID de vue, simuler des classes, créer des ressources d’attente ou trouver les bons délais avant l’étape suivante. Espresso doit comprendre précisément la structure de l’interface utilisateur. Pour créer des assertions et cliquer sur des vues, Espresso, comme la plupart des autres frameworks de test, a besoin d’une référence unique vers la vue concernée dans la hiérarchie des vues (layout). On utilise généralement un ID défini manuellement ou le « chemin du layout » comme référence unique, et les développeurs doivent référencer cet ID lorsqu’ils écrivent le code d’automatisation des tests. Cette approche entraîne une grande complexité que le

développeur doit gérer :

  1. Rechercher les IDs des vues
  2. Vérifier qu’ils sont uniques (les IDs peuvent se répéter à différents endroits de la hiérarchie)
  3. Lors de la refactorisation des layouts, les IDs changent souvent, ce qui casse les tests qu’il faut alors corriger
  4. Créer des ressources d’attente pour le code asynchrone
  5. Vérifier que les recherches de vues et les clics ne sont pas exécutés avant que la vue soit entièrement visible (problématique avec les animations de vues et les transitions de fragments)
  6. Installer des composants supplémentaires du framework pour gérer l’automatisation en dehors du contexte de l’application (notifications, passage à une autre application)

Repeato est-il une alternative à Gherkin et Appium ?

Section intitulée « Repeato est-il une alternative à Gherkin et Appium ? »

Gherkin avec Appium n’est pas une mauvaise idée, surtout si vous voulez tester des centaines d’appareils différents en parallèle. C’est open source et sa documentation est très abondante. Toutefois, le problème de l’automatisation traditionnelle des tests réside dans la complexité de la configuration et de la communication : les testeurs ont besoin que l’application soit conçue de manière à leur permettre d’accéder aux éléments de l’interface. Les IDs sont le plus souvent utilisés à cette fin. Avant même de pouvoir commencer à automatiser, l’équipe de développement doit donc effectuer un important travail :

  1. Créer et documenter les IDs, et vérifier qu’ils sont uniques
  2. Mettre en place toute l’infrastructure nécessaire à l’exécution des tests
  3. Former les testeurs à l’automatisation et à la synchronisation des tests avec l’équipe

Le BDD (ou Gherkin) ajoute une couche d’abstraction supplémentaire, pratique pour les personnes non techniques, mais qui présente aussi ses propres inconvénients :

  • Les phrases en langage naturel (comme « Quand je clique sur le bouton de connexion ») doivent être reliées à du code, ce qui doit encore être pris en charge par les développeurs.
  • Souvent, comme les développeurs ne peuvent pas prévoir ce que les équipes QA souhaitent automatiser, des échanges constants portent sur l’ajout d’IDs ou de définitions de phrases.
  • Une couche d’abstraction supplémentaire ajoute également un point de défaillance et complique le débogage.

En résumé : Gherkin avec Appium rend l’équipe QA dépendante de l’équipe de développement et lui impose encore davantage de responsabilités. Cela demande aussi beaucoup de communication entre les équipes. Nous avons vu des entreprises repousser pendant des années leurs projets d’automatisation des tests pour cette raison (ce n’est pas une plaisanterie).

Nous vous suggérons: utilisez les deux en parallèle. Il vous faudra beaucoup de temps pour mettre en place une automatisation Appium robuste, mais cela peut s’avérer payant à long terme ! Utilisez également Repeato, car certaines opérations sont impossibles avec Appium (comme vérifier le contenu de vues natives telles que des cartes, générer des rapports d’exécution par lots ou effectuer des assertions au pixel près).

FR