Catégories

Configuration d'un serveur Windows 2016

Dans ce guide, nous allons présenter une méthode étape par étape pour exécuter des tests Agilitest massifs.

Dans ce guide, nous allons présenter une méthode étape par étape pour exécuter des tests Agilitest massifs.

Contexte général  

Le serveur Windows  

Dans le cadre de ce guide, nous avons installé un serveur Windows 2016. Il s'agit d'une version d'entreprise courante, mais la version 2019 fonctionne également, car toutes deux partagent le même noyau que Windows 10.

Ce serveur est une VM virtualisée avec Linux KVM, et le serveur hyperviseur lui-même est hébergé dans un centre de données. Toutes les opérations de configuration se font via le Bureau à distance avec le protocole RDP.  

Lors de l'installation, il est nécessaire de vérifier la version" Windows Server 2016 Standard (User Experience) " avec un environnement graphique. D'abord pour faciliter les opérations d'administration, mais surtout parce que la plupart des tests ATS générés avec Agilitest nécessitent un environnement de bureau.

Deux comptes d'utilisateur ont été créés : worker1 et worker2.  

Installation d'Agilitest  

Agilitest a été installé sur le serveur depuis la session Administrateur dans le dossier C:\Program Files (x86\Agilitest. Cette installation est globale pour tous les utilisateurs, et chacun trouvera un raccourci Agilitest sur son bureau.
Par contre, les dépendances et les fichiers de configuration sont spécifiques à chaque utilisateur concernant les deux dossiers ci-dessous :  

  • C:\Users\Administrator\.actiontestscript  
  • C:\Users\Administrator\.agilitest

Les mêmes dossiers seront créés pour les utilisateurs worker1 et worker2 automatiquement, lors du premier build Jenkins. Il est donc possible d'avoir une configuration particulière du logiciel pour chaque utilisateur. Par exemple, il est possible de modifier la version du navigateur Chrome ou Firefox qui sera utilisée par l'utilisateur worker1 en modifiant le fichier C:\Users\worker1\.actiontestscript\.atsProperties.

Vous pouvez trouver plus d'informations sur la page officielle actiontestscript sur GitHub.  

Installation de Jenkins  

Ligne de commande du service ou de l'utilisateur  

Ici, Jenkins a été installé à partir du programme d'installation .msi pour Windows. Cet installateur propose de configurer un service Windows indépendant, ce que nous avons fait (Type de connexion : exécuter le service en tant qu'utilisateur local ou de domaine) avec l'utilisateur Administrateur.

Il est intéressant de noter que le paquet Java jenkins.war peut ensuite être exécuté en tant que service ou en tant que ligne de commande à partir d'une session utilisateur avec l'environnement de bureau.

Il est également important de mentionner que la façon dont Jenkins est lancé aura des implications sur les builds ATS qui sont exécutés. En mode service, l'exécution d'un test (par exemple le navigateur web Chrome canal) ne génère aucune fenêtre visible sur la session utilisateur, qui peut être fermée ou verrouillée, mais les captures d'écran ATSV seront vides. En mode ligne de commande à partir d'une session utilisateur avec un environnement de bureau, le test générera des fenêtres visibles sur la session utilisateur, et les captures d'écran ATSV fonctionneront.

Quoi qu'il en soit, il est recommandé d'exécuter Jenkins en tant que service, et d'exécuter des suites de tests avec des agents Jenkins dans des sessions utilisateur avec des environnements de bureau. L'agent Jenkins peut être déclaré à l'ouverture de la session avec shell:startup.

Un tutoriel en anglais sur l'autorisation d'un compte utilisateur à exécuter un exécutable en tant que service est disponible ici. Les étapes à suivre sont les suivantes : Outils d'administration > Politique de sécurité locale > Stratégies locales > Attribution des droits d'utilisateur > Ouverture de session en tant que service (NT SERVICE\ALL SERVICES). L'utilisateur Administrateur a été ajouté ici.


Le chemin vers le Java JDK est demandé par le programme d'installation. Java 52 (Java 8) ou 55 (Java 11) sont recommandés par défaut mais il est possible d'utiliser Java JDK 15 en ajoutant l'argument - enable-future-java dans le fichier de configuration Jenkins.xml.

La première connexion au back-office web de Jenkins nécessite la saisie d'un mot de passe contenu dans un fichier texte. Nous avons ensuite installé les plugins recommandés.

À ce stade, le gestionnaire de services Windows doit permettre de démarrer et d'arrêter le service Jenkins. Le type de démarrage automatique permet au service de démarrer dès que le serveur est lancé, avant même qu'un utilisateur ne se connecte.

L'installation de Jenkins a été configurée avec les points suivants :

  • Installation de l'extension Locale pour forcer la langue "en" quelle que soit la langue demandée par le navigateur.  
  • Installation des extensions Jenkins suivantes : TestNG Results Plugin & Test Results Analyzer  
  • Configurer le chemin vers git.exe (voir l'article Utiliser un dépôt Git comme source de projet Agilitest pour les constructions Jenkins)
  • Ajouter l'étiquette ats-executor dans le menu Manage Jenkins > Manage Nodes and Clouds > Built-In Node > Configure.

Dans ce type de configuration, prenez soin d'effectuer un Commit puis un Push de votre projet Agilitest afin que Jenkins puisse exécuter vos mises à jour.


Vous avez encore besoin d'aide ?
Contacter le support