Dans cet article, nous allons compléter le scénario de test de performance du sélénium en utilisant JMeter et Selenium Grid.
- 1 – Installer Java 7 ou version ultérieure Si nécessaire
- 2- Téléchargez la dernière version de Jmeter 3.0 ou supérieure.
- 4 – Téléchargez la dernière version stable de Selenium Grid (selenium-server-standalone.pot)
- 5- Téléchargez le pilote de votre navigateur. Nous allons utiliser le pilote Chrome dans cet exemple.
- 6- Exécutez Selenium Grid Hub
- 7- Enregistrez le nœud sur Selenium Grid Hub
- 8- Vérifiez que votre grille de sélénium est correctement opérationnelle
- 9- Exécutez Jmeter à partir du répertoire bin/jmeter. Ajoutez les éléments suivants à votre projet.
- 11- Cliquez sur Exemple de pilote Web dans le menu de gauche. Vous devriez écrire vos scénarios de test avec beaucoup de langages de script ici. Vous devez renommer vos échantillons webdriver pour des scénarios de test compréhensibles.
- 12- Write test assertions
- 13- Voir les détails de la demande et de la réponse.(Voir l’Arborescence des résultats)
- 14- Affichez les résultats globaux des tests répertoriés ou graphiques. (Graphique Agrégé)
- 15- Exécutez un test de charge avec 10 utilisateurs simultanés (10 Threads). Et Vous devriez augmenter cette valeur étape par étape. Définissez le nombre de boucles pour des tests plus longs.
- C’est tout ! 🙂
1 – Installer Java 7 ou version ultérieure Si nécessaire
https://java.com/tr/download/
2- Téléchargez la dernière version de Jmeter 3.0 ou supérieure.
http://jmeter.apache.org/download_jmeter.cgi
https://jmeter-plugins.org/wiki/PluginsManager/
Vous pouvez maintenant utiliser les bibliothèques suivantes avec de nombreux langages de script!!
Les bibliothèques sont:
4 – Téléchargez la dernière version stable de Selenium Grid (selenium-server-standalone.pot)
http://selenium-release.storage.googleapis.com/index.html
REMARQUE: Si vous utilisez Selenium Grid avec votre propre PC, les fenêtres du navigateur apparaîtront sur votre PC et seront plus difficiles. Vous devriez le tester sur votre propre PC, mais vous aurez besoin d’une machine d’automatisation de test. Je vous recommande d’utiliser un serveur Linux ubuntu sans tête pour l’exécution de la grille Selenium. La commande suivante doit fonctionner correctement.
http://www.seleniumhq.org/download/
6- Exécutez Selenium Grid Hub
Ouvrez les fenêtres du terminal ou l’invite de commande. Accédez à l’emplacement du fichier JAR et exécutez la commande suivante dans la première fenêtre. Cela démarrera le concentrateur de sélénium.
java-jar selenium-server-standalone-2.53.1.hub-port de rôle jar 4444
7- Enregistrez le nœud sur Selenium Grid Hub
Accédez à l’emplacement du fichier JAR et exécutez la commande suivante dans la deuxième fenêtre de nouveau terminal. Cela démarrera et configurera les nœuds que vous utiliserez pour les tests de performances. Si vous devez effectuer un test de performance avec 100 utilisateurs simultanés, vous devez définir la valeur maxInstances sur 100. Le code suivant enregistre uniquement les navigateurs chrome. Vous devez également le configurer avec des paramètres de navigateur mixtes.
java-jar selenium-server-standalone-2.53.1.jar – noeud de rôle – hub http://localhost:4444/grid/register – maxSession 100 – browser browserName= »chrome », version=ANY, platform=WINDOWS, maxInstances=50- Dwebdriver.chrome.driver = chemin /vers /le /chromedriver/chromedriver_ForMac
8- Vérifiez que votre grille de sélénium est correctement opérationnelle
9- Exécutez Jmeter à partir du répertoire bin/jmeter. Ajoutez les éléments suivants à votre projet.
- Clic droit pour Tester le Plan et Ajouter des Threads (Utilisateurs – > Groupe de Threads)
- Clic droit pour le Groupe de Threads et Ajouter un Élément de configuration – > Contrôleur Simple
- Clic droit pour le Contrôleur Simple et Ajouter un Contrôleur Logique – > jp @ gc – Configuration du pilote distant
- Clic droit pour le Contrôleur Simple et l’Échantillonneur – > Échantillon WebDriver jp @ gc
- Clic droit sur le Contrôleur Simple et l’Échantillonneur – > Échantillon WebDriver jp @ gc
- Clic droit sur le Contrôleur Simple et les Écouteurs – > Afficher l’arborescence des résultats
- Clic droit sur le Contrôleur simple et les écouteurs – > Graphique agrégé
http://127.0.0.1:4444/wd/hub
Il y a quelques exemples utiles @ ce lien:
https://jmeter-plugins.org/wiki/WebDriverSampler/
12- Write test assertions
Faites un clic droit sur n’importe quel échantillonneur Webdriver et ajoutez Assertions→ Assertion de réponse.
Faites un clic droit sur n’importe quel échantillonneur Webdriver et ajoutez Assertions→ Assertion de durée.
Faites un clic droit sur n’importe quel échantillonneur Webdriver et ajoutez des Assertions → Assertion de taille…..
Remarque : Tous les codes de réponse sauf 2xx ou 3xx échoueront automatiquement. Par exemple, le code de réponse d’erreur du serveur 500 échouera automatiquement par Jmeter.
13- Voir les détails de la demande et de la réponse.(Voir l’Arborescence des résultats)
14- Affichez les résultats globaux des tests répertoriés ou graphiques. (Graphique Agrégé)
15- Exécutez un test de charge avec 10 utilisateurs simultanés (10 Threads). Et Vous devriez augmenter cette valeur étape par étape. Définissez le nombre de boucles pour des tests plus longs.
C’est tout ! 🙂
Remarque : N’oubliez pas que vous devez désactiver ou Configurer l’arborescence des résultats de la vue « Log/Display only Errors » si vous ne l’utilisez pas. Si vous ne le faites pas lors de l’exécution de tests de charge avec plusieurs utilisateurs, vous ne devriez pas avoir assez de mémoire ou de problèmes de fuites de mémoire.
Merci.
Ozgur
Özgür KAYA est un professionnel senior du Test de logiciels et du DevOps avec plus de 10 ans d’expérience. Il a travaillé chez Turkcell Global Bilgi, Veripark, Turkcell, N11, Trendyol, Emirates Airlines, Arute Solutions et Mobven.