• Arnaud Mauduit

Neoload et les Custom Actions


Neoload est un outil de tests de performance qui s’utilise de manière classique, mais il s’intègre également dans des environnements agiles et DevOps. Il propose par exemple une fonctionnalité permettant de maintenir et de faire évoluer un lot de scripts plus rapidement, de définir ses scénarii et scripts « as code », ou encore de s’interfacer avec Jenkins pour des tests de performance automatisés. Ce n’est pas la seule corde à l’arc de l’outil de Neotys, il en possède d’autres, mais nous allons ici nous intéresser à une feature particulière : les Custom Actions.


Depuis sa version 5.0, Neoload permet aux utilisateurs de créer ses propres modules en Java. Cette fonctionnalité ouvre la porte à de nombreuses possibilités étant donné que les utilisateurs peuvent à présent développer n’importe quel outil en fonction de leurs besoins.


Comment ça fonctionne ?


Prérequis :


Avoir un ordinateur avec Windows >7 ou Linux

  • Avoir Java JDK >7 d’installé + Maven

  • Avoir un Environnement de développement adapté : Eclipse,

  • NetBeans ou SpringToolSuite (STS)

  • Avoir Neoload >5.0 d’installé

Développement du projet Java :


Une fois l’IDE installé, l’idée est de développer un projet en utilisant Maven (recommandé) et de compiler en sortie un JAR qu’il faudra placer dans un dossier spécifique de Neoload. Lors de la prochaine exécution du logiciel, la nouvelle librairie sera disponible.


Neotys propose de créer des Custom Actions de deux façons différentes : à partir d’un archetype Maven ou un simple projet Java. Nous nous intéresserons à la première méthode.

  1. Depuis l’IDE Eclipse, il faut la première étape est d’installer le connecteur m2e pour le compilateur JDT d’Eclipse. C’est un plugin créé par Sonatype, permettant entre autres de lancer des builds Maven à partir d’Eclipse, de gérer les dépendances Maven à partir du pom.xml, de fournir des wizards facilitant la création d’un projet, … (accessible à l’adresse http://download.jboss.org/jbosstools/updates/m2e-extensions/m2e-jdt-compiler/)

  2. Créer un nouveau projet Maven, puis y ajouter un catalogue distant en indiquant l’archetype Maven fourni par l’éditeur : http://maven.neotys.com/content/groups/public/archetype-catalog.xml Sélectionner l’archetype neotys-custom-action-archetype et terminer l’installation. Eclipse devrait maintenant avoir généré une structure de projet complète permettant d’office de commencer le développement des Custom Actions


















Un peu de technique

Pour développer une nouvelle Custom Action, il faut implémenter 2 classes Java et surcharger quelques-unes de leurs méthodes :

  • La classe customNameAction : elle doit implémenter l’interface com.neotys.extensions.action.Action et contient plusieurs méthodes permettant d’interagir avec l’outil, et notamment la classe getDefaultActionParameters() qui permet de déclarer tous les paramètres à prendre en entrée. Cela correspond aux paramètres ci-dessous dans Neoload :


  • La classe customNameActionEngine et sa méthode execute() qui contiendra la logique de la Custom Action lorsque Neoload l’exécutera.

Il est à présent possible de créer un module grâce à de nouvelles Custom Actions. Si une entreprise qui utilise Neoload a besoin d’envoyer des données liées au contexte des utilisateurs virtuels en cours à un outil tiers, de générer un rapport de tir customisé, ou encore d’exécuter une tâche système, c’est possible.


La dernière étape est le build du projet grâce à Maven. Il faut exécuter un « mvn install » depuis l’interface Eclipse pour générer la nouvelle librairie. Celle-ci doit être placée dans le dossier extlib du répertoire d’installation de Neoload. Il suffira de glisser/déposer la nouvelle action dans le parcours utilisateur, de définir les paramètres d’entrée de celle-ci et de lancer un rejeu ou un test !

73 vues

Posts récents

Voir tout