Comprendre la Robotic Quality Assurance (RQA)

RQA et RPATout d’abord, pour mieux comprendre les enjeux de la solution Robotic Quality Assurance (RQA), il faut savoir que son principal rôle dans un projet de test est d’assister le testeur dans des activités dites répétitives, chronophages, sans libre arbitre et en définitive, peu valorisantes. De plus cette solution utilise un logiciel « Low Code », ne nécessitant pas de compétences avancées en développement, pour mettre en place des assistants virtuels ou automates.

La Robotic Quality Assurance, proposée par Aldemia, se base sur le principe de la « Robotic Process Automation » ou RPA pour l’appliquer aux activités de la Qualification Logicielle. La RPA est une approche technologique qui vise à automatiser les tâches manuelles d’un processus métier. En d’autres mots, elle est capable de reproduire les actions et le comportement d’un utilisateur à l’identique et de les rejouer de manière indéfinie. Elle s’appuie sur les principes de l’intelligence artificielle (AI) et utilise donc des bots pour manipuler des données, communiquer entre eux et ainsi automatiser des tâches récurrentes à la place d’un humain et cela quel que soit l’environnement.

Par ailleurs, la Robotic Quality Assurance fait gagner en agilité tout en optimisant les tests d’intégration, d’acceptance et d’IHM.

Sans oublier l’amélioration du ROI de l’automatisation en réduisant les coûts de prise en main de l’outil, de développement et de maintenance.

Quels sont les outils existants dans le marché ?

Lorsqu’on parle d’automatisation il existe de nombreux logiciels d’automatisation dites « classiques » dans le marché. Ces outils nécessitent des compétences en développement. C’est le cas d’UFT, Sélénium ou Cypress.

D’autre part, il y a les logiciels RPA (Robotic Process Automation) qui accordent une attention particulière sur le « quoi automatiser » plutôt que le « comment automatiser ». Parmi eux, 3 solutions leaders se partagent le marché mondial : Blue Prism, Automation Anywhere et UiPath.

Aldemia a retenu la solution proposée par UiPath pour plusieurs raisons : parce que c’est celle qui est la plus accessible et la plus intuitive, elle a une large communauté d’utilisateurs et a la capacité d’intégrer ce qui se fait de meilleur dans le monde de l’automatisation.

Quelles activités automatiser avec la RQA et pourquoi ?

Il faut savoir que, à l’instar de l’automatisation qu’on a appelé ici « classique », toutes les activités de test ne peuvent pas être convenablement automatisées via le RPA. Nous vous partageons une liste non exhaustive d’activités éligibles à l’automatisation via le RPA et pourquoi :

  • L’initialisation des environnements d’exécution : Cette tâche technique n’est pas une activité naturelle pour un testeur qui requiert généralement des compétences techniques de haut niveau ;
  • La préparation des jeux de données : Réaliser des requêtes SQL ou de la saisie appelée parfois « au kilomètre » génère souvent des erreurs ;
  • L’exécution des cas de test : C’est une des tâches la plus chronophage et la moins valorisante des activités de testing ;
  • La centralisation et l’harmonisation de la collecte des résultats d’exécution des tests : L’agrégation des résultats dans un unique outil de référence facilite le travail du Chef de projet lors de la rédaction du PV de recette. Elle évite également des erreurs d’analyse ou d’interprétation lorsque les résultats sont stockés dans un unique outil de référence.

Un assistant intégré

Un des avantages incontestables du bot est, non seulement qu’il s’intègre à votre poste de travail mais il est en mesure d’interagir et d’utiliser l’ensemble des outils présents. On parle alors d’assistant logiciel intégré.

C’est aussi bien le cas pour les outils utilisés dans le testing que dans le développement. Pour le premier on peut citer les référentiels de test et les outils de spécification des « user stories » (Jira Xray), de bug-tracking (Jira) ou d’exécution de requêtes SQL ou API (ReadyAPI,…). En ce qui concerne les outils du développeur, les bots sont en mesure d’utiliser les IHM ou les connecteurs des applications DevOps (Git, Jenkins…), par exemple.

Quels sont les bénéfices de la RQA ?

L’automatisation classique (c’est-à-dire avec les outils nécessitant des compétences fortes en développement) se contente bien souvent de réduire la charge d’exécution des tests en oubliant les autres activités de test.

Il semble clair que cette approche conduit à une augmentation de la charge globale des activités de test.

C’est dans ce contexte que la Robotic Quality Assurance (RQA) entre en jeu avec une solution qui permet une réduction constatée de :

  • 50% sur la charge de conception (grâce à l’ergonomie de l’application et l’utilisation d’un langage pseudo-naturel) et de ce fait,
  • 40% sur la charge de maintenance,
  • 50% sur la charge des activités de reporting (car capable d’interagir avec la plupart des logiciels de reporting du marché.

Sans compter que, l’automatisation des activités de test des projets via la RQA garantie la réutilisation de ces assistants en production.

Optimisation des processus de test

Exemple de réalisation avec la RQA

Prenons comme exemple un client en assurance : Il souhaite avoir une application qui va lui permettre de gérer les demandes de remboursement des différents actes médicaux. L’équipe test du projet crée un automate qui simule le processus métiers et les multiples combinatoires de ce processus de demandes de remboursement. Cet assistant est utilisé pour valider toutes les versions et mises en production de l’application.

Par la suite, ce même bot pourra être utilisé pour faire de la saisie en masse en production lors de pics d’activité saisonnière.

Ce gain d’évitement de main d’œuvre ponctuel peut atteindre 5 à 10 ETP en fonction du processus.

Ce qu’il faut retenir

La Robotic Quality Assurance (RQA) est utilisée dans le cadre de l’automatisation des tests pour :

  • Mettre en place un assistant intégré au poste utilisateur
  • Soulager les testeurs des tâches besogneuses et à faible valeur ajoutée
  • Développer une solution réutilisable en production

Questions/Réponses

Lors du partage de notre solution RQA avec nos clients nous avons recueilli des questions fréquemment posées. Voici les réponses apportées par notre expert :

Questions Réponses
Pourquoi utiliser UiPath et non pas un autre ? Pour sa facilité de prise en main

Pour sa communauté très active d’utilisateurs

Pour son côté « couteau suisse », et la capacité de l’éditeur à agréger le meilleur de ce qui se fait

Est-ce que « low code » sous-entend que tout le monde peut arriver à automatiser (même avec un minimum de formation) ? Tout le monde peut automatiser des processus complets avec cette approche RQA, mais ça reste un outil et la réalisation de bots robustes et pérennes nécessitera l’expérience et une démarche outillée, tout comme le testing bien fait nécessite une certaine expertise
Quels sont les prérequis pour la mise en place d’une RQA? Compétences techniques, Organisation /framework, Typologie de tests (fonctionnels/ non fonctionnels) ? Une connaissance de la gestion de projet, des métriques ROI

Une capacité à modéliser les processus avec des diagrammes

Les tests fonctionnels sont adressés

Les tests non fonctionnels type test de charge ne le sont pas, les tests de performance peuvent l’être mais ce n’est pas l’objectif premier de l’outil

Quand tu donnes un élément du site a UIPath qu’est-ce qu’il récupère pour identifier cet élément particulier ? Récupère-t-il des balises HTML dans le DOM ou il utilise autre chose? Il se base effectivement sur le DOM.

C’est d’ailleurs une notion importante car plus vous serez en interaction avec le développement et les éventuelles normes de codage utilisées par les développeurs, plus vous serez en capacité de faire des scripts robustes

Est-ce qu’il gère les autres devices (mobiles, tablettes) ? Si oui comment ? Est-il ineffaçable avec des émulateurs de devices tels que Browsertack par exemple ? UiPath est capable de s’interfacer avec des devices physiques ou émulées type Saucelabs ou Browserstack et utilise de façon intégrée la technologie Appium

 

Peut-on importer des cas de tests déjà écrits, d’autres outils (Xray, Squash,…) ? Nativement non. Il reste cependant possible de réaliser des bots capables de lire et exécuter et remonter les résultats de l’exécution de scénarios de Squash par exemple
Est-ce que je peux automatiser des tests E2E cross applications ? UiPath est compatible cross browsers et cross applications (Windows, SAP, divers clients lourds), voire devices (iOS, Android)
Est-ce que je peux automatiser le lancement des batchs et la récupération des fichiers ? UiPath est capable d’exécuter des batchs, de s’exécuter en RDP, sur Citrix, et de récupérer des fichiers via FTP ou via n’importe quelle IHM capable de gérer l’affichage de fichiers distants puisqu’il est en mesure de réaliser toutes les actions IHM réalisées par le testeur

 

Vous souhaitez en savoir plus ? Rendez-vous sur notre page Solutions.

Laisser un commentaire