Catégories

Docker

Docker est une plateforme open source qui permet de créer, de déployer et d'exécuter des applications dans des environnements isolés appelés"conteneurs".

Les conteneurs sont des unités logicielles légères et autonomes qui encapsulent tous les éléments nécessaires à l'exécution d'une application, tels que le code, les bibliothèques, les dépendances et les configurations.

Les tests conçus sur Agilitest peuvent être exécutés avec Docker et ses conteneurs composés d'images. Créez et maintenir vos tests avec Agilitest puis exécutez-les avec Docker pour bénéficier d'exécutions en arrière-plan sans interface graphique qui donneront lieu à des rapports détaillés.

Qu'est-ce que Docker ?

Docker utilise des images pour créer des conteneurs. Un conteneur Docker est une instance en cours d'exécution d'une image Docker. Les images sont créées à partir de fichiers appelés Dockerfiles, qui décrivent les étapes de construction de l'image.

Le conteneur fournit un environnement isolé pour exécuter une application de manière cohérente et reproductible, indépendamment de l'environnement hôte. Chaque conteneur est isolé des autres et utilise efficacement les ressources du système.

Contrairement à une machine virtuelle, qui nécessite un système d'exploitation complet, chaque conteneur Docker partage le même noyau d'exploitation avec l'hôte, ce qui permet une utilisation plus efficace des ressources matérielles.

Pour en savoir plus sur l'utilisation de Docker, vous pouvez consulter la documentation de Docker : https://docs.docker.com/

Docker et ATS

ActionTestScript est un langage de test structuré et lisible utilisé pour créer des campagnes de tests automatisés fiables et performants pour les interfaces graphiques.

Les scripts de test sont définis par une séquence d'actions exécutées sur une application web ou de bureau. Les scripts écrits à l'adresse ATS sont convertis en classes Java, puis exécutés à l'aide des cadres Selenium et TestNG.

Avec ATS, les concepteurs de tests se concentrent uniquement sur les actions fonctionnelles à réaliser et n'ont pas à se soucier des considérations techniques.

En combinant Docker et ActionTestScript, vous avez désormais la possibilité d'exécuter des suites de tests dans des environnements prédéfinis, sous Linux ou Windows. Ces environnements sont équipés des dernières versions de navigateurs et de pilotes web.

Pour utiliser les images Docker, copiez la ligne de commande DockerPull de l'image,

Commande Docker pull

Ensuite, exécutez la commande dans votre script créé dans Agilitest via votre Terminal sur votre ordinateur.

💡 Conseil

Pour mettre à jour votre environnement, il suffit d'effectuer une extraction Docker avant chaque lancement de test pour obtenir la dernière version des images Docker en fonction des mises à jour du navigateur, des pilotes web, etc.

Cette combinaison offre une grande flexibilité et permet de maintenir un haut niveau de contrôle sur les conditions d'essai, garantissant ainsi des résultats précis et fiables.

Aucune configuration spécifique n'est requise sur la machine qui exécute les tests, à l'exception de l'installation de l'application Docker.

Pour installer Docker, cliquez sur le lien de téléchargement directement sur le site de Docker : https://www.docker.com/

Utiliser une image Docker

Pour découvrir les images Docker disponibles d'ActionTestScriptvous pouvez consulter la page web Docker Hup : https://hub.docker.com.

Entrer "actiontestscript"dans la barre de recherche pour afficher toutes les images correspondantes.

DockerHUB

Cette plateforme vous permet de consulter les détails de chaque image, tels que sa version, ses métadonnées et son mode d'emploi.

Détails de Docker Hub

Docker Hub fait de l'utilisation d'images Docker prêtes à l'emploi, comme celles d'ActionTestScript, un jeu d'enfant.

🔸Warning

La première fois que vous téléchargez le Dockerhub, il y a environ 3 Go, mais à chaque mise à jour, il ne télécharge que des portions d'images puisque la base a déjà été téléchargée. Les images sont découpées en "tranches" avec un GUID. Il s'agit généralement de fichiers de 150 à 200 Mo.

ATS images

Avec Docker, vous disposez de référentiels d'images basés sur les systèmes d'exploitation (OS) Linux et Windows.

Les images Linux peuvent être exécutées :

  • Hôte Windows via Hyper-V ou via Windows Subsystem for Linux (WSL)
  • Linux fenêtres
  • MacOs

Quant aux images Windows, elles ne peuvent être exécutées que sur un hôte Windows utilisant Hyper-V et uniquement avec une version "pro" de Windows (10 ou 11).

Images basées sur le système d'exploitation Linux

linux: Prêt à être utilisé pour exécuter des tests avec ActionTestScript, soit avec AtsLauncher, soit avec Maven.

linux-base: contient le Jdk Java, Maven et des outils tels que Git, Zip, Unzip et Bzip2.

linux-browsers: Contient les derniers navigateurs web. Les navigateurs inclus sont : Brave, Firefox, Google Chrome, Microsoft Edge et Opera.

Tests avec Docker

Dans les images Docker Linux et Windows, seuls les tests sur les navigateurs web et tous les tests d'API peuvent être exécutés. Il est également assez facile d'exécuter des tests avec Jenkins ou d'autres sur des serveurs non graphiques avec seulement quelques lignes de commande.

Conditions préalables :

  1. Sur un hôte Windows

Une fois installé, vous devez exécuter Docker Desktop sur l'hôte pour utiliser les conteneurs Docker.

        2. Sur un hôte Linux

Consultez la page suivante : https://docs.docker.com/engine/install/ubuntu/

Ensuite, vous devez récupérer l'image Docker :

  • Sur un hôte Windows: Dans une console PowerShell : Docker pull actiontestscript/linux
  • Sur un hôte Linux: Dans une console bash ou un shell : Docker pull actiontestscript/linux
  • Dépôt Git

🔸 Attention

‍Ilest important de noter que les tests impliquant des actions du système ne fonctionneront pas.

Une fois les tests exécutés, vous pouvez générer des rapports contenant des images, comme pour un test normal. Le rapport peut inclure des captures d'écran, même s'il n'y a pratiquement pas d'écran. Tout est stocké en mémoire grâce au navigateur web. Cela signifie que les tests peuvent être exécutés sur des serveurs qui n'ont pas d'interface graphique.

Vous avez encore besoin d'aide ?
Contacter le support