Description
Sommaire
Présentation
Cette page à pour objet de décrire la solution Squash.
Description
Récupéré depuis https://www.supinfo.com/articles/single/10104-squash-solution-complete-test-logiciel :
La solution Squash est une suite logicielle open source produite par l’éditeur français Hénix. La suite Squash propose un panel complet d’outils pour la mise en place d’un processus de qualification sur l’ensemble d’un système, débutant de la collecte des spécifications, à la rédaction des scripts de test, à leurs exécutions automatiques jusqu'à la récolte des rapports. La mise en place d’une chaîne complète de recette permet de s'assurer du bon fonctionnement des applications, mais apporte de nombreux autres avantages :
- la garantie de la traçabilité des informations d’un bout à l’autre du processus de développement
- l’assurance pour le client d’un produit bien construit et du bon respect des spécifications de départ
Pour répondre à ces besoins la suite Squash fournit deux solutions :
- Squash TM (Test Management) : C’est un gestionnaire de référentiel de test qui assure la gestion des exigences, scénarios de test, campagnes d’exécution ainsi que la création de rapports d’exécution.
- Squash TF (Test Factory) : C’est la solution qui permet l’implémentation et l’exécution des tests automatisés.
Squash TM
Fonctionnalités
Squash TM offre un large choix de fonctionnalités afin de gérer au mieux son référentiel de test :
- Gestion des exigences
- écriture, conservation et versioning des spécifications d’un projet en exigences. Lors de l’enregistrement de ces exigences, il est possible de renseigner un grand nombre de paramètres tels que le libellé, la description, la criticité, la catégorie, le statut, les cas de test qui lui sont associés.
- Gestion des cas de test
- écriture des scénarios de test à appliquer au projet. Celui-ci peut être décrit de façon plus ou moins détaillée, selon le choix de l’utilisateur. En plus des paramètres habituels (nom, référence, importance, type, statut…) d’autres informations peuvent être renseignées telles que le descriptif des pas de test. Cette fonctionnalité permet à des utilisateurs qui auraient le poste de testeur d’avoir le plan d’action détaillée du test qu’il a à effectuer.
- Gestion des campagnes et des exécutions de test
- Squash TM permet de gérer et d’organiser ces plans d’exécution de test. Grâce à cette fonction il est possible de lancer des campagnes et gérer des anomalies soulevées durant celles-ci vers différents bugtrackers.
- Édition de rapport de test
- suite à l’exécution d’une campagne, Squash TM offre la possibilité de générer des rapports de test sous différents formats, rapport textuel, graphique, constitution de dashboard.
Ces quelques points présentent les grandes fonctionnalités qui sont offertes par la solution Squash TM. En plus de celles-ci, il y a, bien évidemment, la gestion des utilisateurs et des projets qui sont incluses à la solution.
Environnements exécution
Comme toute solution, Squash TM nécessite d’un environnement particulier pour pouvoir s’exécuter. Cette solution peut être utilisée sur tous les principaux systèmes d’exploitation du marché (Windows, Linux, Mac) et comme celle-ci se présente sous la forme d’une application web, elle est compatible avec les principaux navigateurs connus (IE 11+, Firefox, Chrome).
Squash TM fonctionne à l’aide d’une JVM (Java Virtual Machine), il est donc nécessaire d’avoir en plus sur son poste Java d’installé (Java JRE 1.8).
Comme indiqué plus haut, Squash TM se présente sous la forme d’une application web. Pour pouvoir héberger celle-ci, la solution embarque avec elle son propre serveur d’application Tomcat qui est lancé à chaque fois que l’application est démarrée.
Squash TF
Fonctionnalités
En termes de fonctionnalités, Squash TF se distingue en deux composants proposant la suite logique des actions à mener lorsque l’on souhaite concevoir une chaîne de qualification industrialisée. Le premier composant gère l’implémentation des scripts de tests et le second l’exécution des scripts écris.
Implémentation
Pour l’implémentation, Squash TF propose plusieurs approches de développement en fonction des appétences et compétences de chacun :
- L'écriture de script en code natif
- Squash TF propose actuellement deux langages de programmation supportés pour l'écriture des scripts, Cucumber-Java et Java JUnit. L'écriture des projets de test dans l'une de ces technologies est reconnue par les modules d'exécution Squash TF. S'il n'est pas possible de débuter un projet de test dans l'un de ces deux langages, Squash TF a créé des Runners permettant de générer un nouveau projet.
- L’écriture de script avec des éditeurs studio
- Le serveur d’exécution Squash TF supporte, en plus du code natif, l’écriture des scripts effectués avec certains éditeurs studio, Microfocus UFT et Ranorex. Ces deux éditeurs sont spécialisés dans la conception de script de test fonctionnel. Ils proposent via leurs interfaces d’enregistrer facilement vos scénarios de tests pour des applications web, mobile, API… A la différence de l’écriture par code natif, ces outils permettent d’être guidé et possèdent de nombreux blocs techniques qui simplifient l’écriture du code.
- Squash Keyword Framework
- Cette dernière approche est celle créée par l'éditeur de Squash, ils ont créé leur propre framework d'écriture de test basé sur un DSL (Domain Specific Language) ou langage dédié. L'écriture des scripts est ici orientée mots clés qui sont fournis par le framework.
Exécution
En ce qui concerne le second bloc de composant, « l’exécution » Squash TF fournit deux solutions reposant sur le même socle, mais pouvant tourner sur des environnements différents :
- Les Runners
- Squash TF a mis en place deux Runners différents pour chacun des codes natifs, un Runner Java JUnit et un Runner Cucumber Java. Grâce à ces Runners, il est possible d'exécuter directement depuis un poste des projets écrits dans ces langages en ligne de commande et récupérer directement les rapports de tests associés.
- Execution Server
- Cette seconde solution repose sur les mêmes Runners que précédemment, mais elle est hébergée sur un serveur Jenkins qui va permettre l’exécution des scripts de tests sur des environnements distribués à l’aide d’agents Squash TF qui seront installés sur les environnements cibles.
Runners
Les Runners Squash TF ont été créés afin de satisfaire un objectif principal, faciliter au maximum l’intégration de la solution dans un écosystème déjà existant comme, par exemple, au sein d’un projet de test déjà rédigé. Squash TF fournit deux Runners pour les technologies Java JUnit et Cumcuber Java et repose sur le principe de build Maven. Grace à ces Runners, il est possible d'effectuer deux actions principales, créer à partir d’un archétype un nouveau projet de test et exécuter un projet de test.