Description

De Wiki de Jordan LE NUFF
< Outillage‎ | Squash
Révision datée du 16 juillet 2020 à 07:36 par Jordan (discussion | contributions) (Page créée avec « == 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-s… »)
(diff) ← Version précédente | Voir la version actuelle (diff) | Version suivante → (diff)
Sauter à la navigation Sauter à la recherche

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.