Retour Agilitest

J’ai eu la chance de pouvoir test Agilitest avant sa sortie et donc de faire du bêta test sur cet outil d’aide à l’automatisation des tests IHM. Je vous propose donc aujourd’hui un retour sur cet outil et vous fait part de mes impressions.

Comme pour mes autre articles de tests d’outils, j’ai présenté ce retour aux responsables de l’outil, ces responsables m’ont permis d’améliorer l’article et même fournit du matériel pour cet article. Je pense ici à la vidéo de très bonne qualité intégrée à la présentation (et à l’article) qui reprend un exemple créé pour l’article.

Présentation rapide :

Agilitest est un outil d’aide à l’automatisation des tests IHM (web ou client lourd, je n’ai personnellement testé que du web).

Pour cela Agilitest utilise le KDT (et un automate de test libre ats). Pour rappel, le KDT, Keyword Driven testing (test par mots clés en fraçais) est une couche intermédiaire qui permet à des non technique de développer des tests automatisés sans devoir entrer dans le code. Chaque action appelée mot clé est en fait une fonction appelée, fonction dont l’utilisateur détermine les variables.

Les tests ainsi développés grâce à l’interface graphique de l’outil sont alors exécutables en dehors de l’outil avec des outils d’exécution de test ou des ALM… Et ce sans avoir besoin d’une licence agilitest, l’automate étant libre. Cela permet de ne pas perdre ses tests si l’on décide de ne plus utiliser l’outil.

Le KDT « de base » :

Comme écrit précédemment, Agilitest utilise le KDT. Il existe déjà de nombreux mots clés comme les clics, les vérifications…

Agi1

Ces mots clés sont sélectionnables et ajoutés au scénario, qui devient une suite de mots clés :

Agi2

La suite de l’exécution de ces mots clés donne un scénario. Ici le scénario est :

  • L’ouverture de Chrome
  • Aller sur une url
  • Cliquer sur une variable
  • Entrer un certain texte dans une zone

Notez que pour le moment les variables ne sont pas indiquées. On ne sait donc pas sur quelle url on doit aller ni sur quel bouton (ou autre objet) cliquer… Pour cela il faut identifier ces objets. L’indentification unique des objets informatiques pose fréquemment problème… Surtout pour les personnes fonctionnelles ne connaissant pas bien le développement.

Afin de répondre à ce problème Agilitest propose un outil de capture qui permet de sélectionner facilement un objet, l’identifier et sélectionner des identifiants tout en s’assurant de son unicité. Cet outil de capture fonctionne bien et est intuitif, je vous recommande néanmoins de faire des capture sur chrome plutôt que sur Firefox qui dégrade les performances.

Agi3

Agi4

Pousser le KDT plus loin :

Attention, ce titre peut être trompeur. Agilitest continue de faire du KDT et ne va pas plus loin. Néanmoins il permet aux personnes non techniques de créer eux-mêmes de nouveaux mots clés, plus complexes et de les réutiliser facilement.

Pour cela Agilitest propose de transformer des « tests » (que nous pouvons appeler script) en mots clés. Il existe en effet un mot clé « sub-script ». Ce mot clé permet d’appeler un script déjà développé au sein d’un autre script. On définit alors les paramètres souhaités pour le script appelé.

On peut par exemple imaginer un sous-script permettant de remplir un formulaire d’une page qui devra être testée 10 fois. En appelant un script remplissant ce formulaire on s’épargne beaucoup de maintenance. C’est exactement ce dont je parle dans mon article sur la modularité des tests. Ici, cette modularité est accessible à des personnes ne sachant pas développer !

Utiliser les données :

Agilitest propose également une gestion des données que je trouve très pratique et qui permet, si bien utilisée, de limiter encore le nombre de test. Pour cela, Agilitest propose de variabiliser les données du test (ce que l’on souhaite entrer comme message, vérifier…) au moyen d’un simple fichier csv.

Pour un formulaire de création de mail, cela revient à proposer un script qui remplit le prénom, nom, mail souhaité, mot de passe 1, confirmation de mot de passe et cliquer sur « suivant ». Les variables de ce script deviennent les variables indiquées précédemment chacune étant dans une colonne. Si l’on veut ajouter des tests il suffit d’ajouter des lignes au csv.

Conclusion :

Agilitest est simple à prendre en main et agréable à utiliser. Je le trouve très bien pour aider les fonctionnels à développer des tests automatisés mais également très pratique pour mettre un premier pied dans l’automatisation et penser à l’architecture des automates.

Sa relative simplicité permet cependant de faire des actions assez complexes et variées tout en limitant le temps de maintenance… Cela permet une vraie utilisabilité des tests sur le long terme et un périmètre d’automatisation intéressant.

Le principal point faible d’Agilitest est, selon moi, la partie non fonctionnelle. Je pense qu’il y a encore des améliorations ergonomiques à apporter (il n’est pas instinctif de penser que le mot clé « fenêtre » est celui à utiliser pour les onglets), de performances (certaines lenteurs), d’adaptabilité (notamment avec une dégradation des performances sous Firefox) ou encore de stabilité (j’ai dû redémarrer Agilitest suite à un bug (maintenant corrigé) engendré par Firefox)

Présentation ppt : Clic

[googleapps domain= »drive » dir= »file/d/1TUqkm5l-tUNtLvKAopvX_cpVWOzIBigK/preview » query= » » width= »640″ height= »480″ /]

 

 

Vidéo : Clic

[youtube https://www.youtube.com/watch?v=d5MQqOeyRnQ&w=560&h=315]

Pensez à rejoindre le groupe Le métier du test si le sujet vous intéresse !

N’hésitez pas à me suivre et lire mes autres articles si vous voulez en apprendre plus sur le test ou venir partager vos connaissances

Merci à tous ceux qui mettent « j’aime », partagent ou commentent mes articles

8 Responses

  1. Agilitest évolue!

    Il est maintenant possible d’exécuter directement les tests sous format ATS à l’aide de XStudio de XQual.

    1. Bonjour
      Yest est un outil de conception de test, d’ATDD. Il a pour but de faciliter la communication entre métier, développeur et test et permet d’écrire des cas de test. Il est possible de faire du KDT avec également.
      Agilitest a un tout autre but. Il vise à permettre à des testeurs fonctionnels voir des métiers d’automatiser des tests de manière propre.

  2. Merci pour ce retour! L’outil expose-t’il une APi, quelle différence entre des outils qui proposent l’enregistrement de séquences d’actions (no code) et la possibilité de scripter en sus comme UFT, Ranorex….Et enfin quel budget pour cet outil?

    1. Bonjour,
      si je ne dis pas de bêtises, l’outil n’a pas besoin d’API car il génèrent des scripts qui peuvent ensuite être lancés.
      Un outil d’enregistrement de séquence avec ensuite des modifications force à bien comprendre le code généré. de même certaines actions peuvent s’avérer inutiles ou pas forcément pérennes.
      Pour le prix il faut voir avec l’éditeur

  3. Bonjour,
    Agilitest est l’éditeur qui produit des tests au format ATS, qui est textuel, lisible, et open-source: https://fr.agilitest.com/documentation/what-is-ats-actiontestscript-and-its-link-to-agilitest, le même langage permet des tests sur toutes les technologies que nous supportons : Web, Desktop, Android, iOS, Webservices, SAP…
    Agilitest est un outil no-code, qui ne nécessite pas de connaitre un langage, cela permet de rendre les équipes de testeurs autonome dans la création des tests et le rejeu des campagnes de tests.
    Pour autant, nous ne permettons pas l’enregistrement des tests, ils sont construits action par action par les utilisateurs, c’est rapide, cela génère des tests robustes et permet la réutilisabilité des scripts et le DDT.
    ATS est compatible TestNG et le déploiement se fait très facilement sur les systèmes CI/CD, il n’y a pas de licence d’exécution.
    La licence porte donc uniquement sur l’éditeur Agilitest pour rejouer ou maintenir des tests, nous avons des tarifs dégressifs en fonction du nombre de licences et du nombre d’années d’engagement.
    Désolé, ce n’est en général pas dans ma philosophie de pousser des billets un peu commerciaux, ceux qui sont intéressés pour en savoir plus peuvent me contacter en MP https://www.linkedin.com/in/christophe-cressend/ et je me ferai un plaisir de répondre à vos questions.

  4. Bonjour
    Quelle différence entre agilitest et roboframework ?
    Les plus, les moins.

    Merci pour ce très bon article et bravo à Agilitest qui vient de gagner encore un prix innovation.

    1. Bonjour
      Pour utiliser RobotFramework il faut écrire ses scripts alors que ce n’est pas le cas avec Agilitest.
      RobotFramework est donc moins accessible (il faut être plus technique mais potentiellement plus flexible qu’Agilitest.
      De même, la licence RobotFramework est gratuite.
      Pour en savoir plus je vous invite à manipuler les 2 outils, il y a une version d’essai de 30 jours pour Agilitest

Laisser un commentaire

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

éco-conception

RGESN: NumécoDiag de la taverne!

Ça y est, je l’ai fait ! Je parle ici du NumÉcoDiag de la taverne ! Vous allez me dire que vous ne savez peut-être pas ce qu’est le NumÉcoDiag. Pas d’inquiétude, c’est malheureusement assez normal. Je n’ai moi-même appris son existence que début mars… grâce à mon activité avec

Lire la suite »
culture générale

[Programmez!] Intelligence en essaim et industrie logicielle

L’intelligence en essaim Nous nous enorgueillissons souvent, en tant qu’être humain, d’être particulièrement intelligent et capables de résoudre des problèmes complexes ! Cet orgueil est-il vraiment bien placé ? L’étude de comportement d’animaux « a priori » très peu intelligents nous montre que ces derniers arrivent néanmoins, de façon récurrente, à résoudre des problèmes

Lire la suite »
Agilité

Stratégie de test agile : La Definition of done

La plupart des méthodes de test recommandent l’utilisation d’un document de stratégie de test dès le début d’un projet. Néanmoins, une des valeurs du manifeste agile est « des logiciels opérationnels plus qu’une documentation exhaustive » ce qui pourrait rendre ce document inutile. Laissez-moi vous expliquer exactement ce qu’est une stratégie du

Lire la suite »