Automatisez les tests de non-régression sur desktop et mobile

Automatisez les tests en injectant massivement vos jeux de données. Et profitez-en pour augmenter drastiquement la couverture de vos tests.

Les cycles de développement sont de plus en plus courts. En effet les livraisons deviennent hebdomadaire voir quotidienne (!). Mais les sites Internet et les applications mobile intègrent toujours plus de fonctionnalités complexes. Par conséquence les parcours utilisateurs se dé-multiplient. Dans un environnement toujours plus concurrentiel l’enjeu des tests est fondamental. Mais les exécuter manuellement régulièrement (toutes les semaines voir tous les jours) devient impossible sans faire exploser les coûts… et perdre l’envie des testeurs !

Automatisez les tests de non-régression est la solution pour améliorer la qualité de vos livraisons, maîtriser les coûts. Et in fine d’améliorer le Retour Sur Investissement (ROI) alloué aux tests.

Automatisation des tests

Stratégie de tests appliquée à l’automatisation

Avant de commencer à développer le premier script, les automaticiens vont prendre connaissance de vos méthodologies de testing, des outils utilisés et des cycles de développements. A partir de ces éléments ils vous proposeront une stratégie de tests automatisés adaptée à vos process :

  • récupération des cas de tests depuis un référentiel de tests (Testlink, Squash TM) ;
  • remonté des anomalies dans le bugtracker (Jira) ;
  • intégration dans l’outil d’intégration continue ;
  • injection des jeux de données depuis une source externe (CSV, JSON, base de données) ;
  • création de rapports détaillés ;
  • accès à un portail de suivi en temps réel des exécutions…

Par exemple, chez Testing Digital la conception des scripts se fait par sprints courts d’1 à 2 semaines maximum. A chaque livraison le code est exécuté sur un large panel de configurations non-émulées (d’iOS 10 à 11, d’android 4.4 à 8, Windows 7 à 10) au sein de notre laboratoire. Puis, dès qu’il est validé, il est “poussé” sur un contrôleur de version (Git). Ainsi il peut s’intégrer à l’environnement d’intégration continue du client (ou le notre).

Automatisation des tests

DEVICES LAB on-premise

Il est impératif d’avoir au moins un mini devices lab en interne. Pour du desktop c’est assez facile. Il suffit d’installer un « PC » pour contrôler les principaux navigateurs. Suffisant pour avoir un bon aperçu des livraisons. Par contre sur mobile c’est une autre histoire. En effet, si mettre en place un lab de tests pour android reste assez simple, déployer pour les iPhones et iPad d’Apple demande plus de ressources et de compétences.

Si nécessaire, les automaticiens « Testing Digital » aident à la mise en place de l’environnement d’automatisation des tests chez vous. Car tout l’intérêt d’un test automatisé c’est qu’il soit :

  • souvent sollicité par les développeurs lors des phases de développement ;
  • immédiatement dès qu’il y a un nouveau “build” ;
  • et quotidiennement sur l’environnement de production.

 

Adoptez une stratégie de tests performante pour vos projets agiles ou en cycle en V

Stratégie de tests

Concevoir une stratégie de tests en amont de vos projets c’est vous assurer un contrôle qualité rigoureux. C’est aussi l’adapter aux différents cycles de développement mais aussi, aux spécificités du projet. Pour cela le test leader prend contact avec le chef de projet, Product Owner, le scrum master, la DSI ou encore le métier. Ainsi, auprès d’eux, il recueille le besoin et comprend les enjeux. Dès lors il peut établir une stratégie de tests adaptée au projet en fonction.  Les éléments misent à sa disposition pouvant être : Spécifications Fonctionnelles (SFD), User Stories (US), Wireframes / Concept graphiques, Sitemap, Expression de besoin…

De la nécessité de lancer des tests fonctionnels et ergonomiques régulièrement

Les tests fonctionnels et ergonomiques doivent être lancer très régulièrement. Car garantir une application sans défaut pour les utilisateurs est un enjeu business de plus en plus important. En 2016 : 52,7% du trafic web total venait du mobile (3) ; 36,6 millions de Français achetaient sur Internet (1) ; 16% des transactions en-ligne se faisaient sur mobile en France avec une augmentation de 60% sur un an (2) ; soit 34% dans le monde (3). Ces chiffres ne cessent de prendre de l’ampleur et confirment la tendance et l’importance du “mobile first”… voir du “mobile only”.

Comment tester une Progressive Web App ?

Progressive Web App, futur du web ?

Chez Testing Digital nous sommes régulièrement approchés par les agences, startup et autres entreprises pour tester toutes sortes de sites Internet et Applications Mobiles. Ainsi une majorité d’entre eux développe sur des technologies connues. Alors la stratégie de tests à adopter est éprouvée.

Mais régulièrement on vient nous voir avec de nouvelles technologies, de nouvelles fonctionnalités. Celles-ci sont encore toutes jeunes, peu de développeurs les maitrises. Nous trouvons encore peu de documentation disponible sur Internet. Mais elles sont souvent portées par des leaders de la tech américaine : Facebook, Google et Apple… ce qui les rend attirantes pour beaucoup de développeurs.

Qu’est ce que les tests de bout en bout (end to end) ?

Les tests de bout en bout sont une technique utilisée pour vérifier si une application (site Internet, application mobile…) se comporte comme prévu du début à la fin. Le testeur doit se mettre dans la peau d’un utilisateur et dérouler les tests comme s’il utilisait véritablement l’outil mis à sa disposition. Cette technique permet de valider le fonctionnement du front. Mais aussi de vérifier son intégration avec le back-office et autres webservices.

Les tests de bout en bout sont généralement exécutés après les tests fonctionnels et après avoir vérifié le fonctionnement du système. Il sont, autrement dit, réalisés juste avant la mise en production du site Internet ou de l’application mobile.