Test de performance du sélénium avec JMeter et Selenium Grid

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

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

1

https://jmeter-plugins.org/wiki/PluginsManager/

2

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

3

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.

5- Téléchargez le pilote de votre navigateur. Nous allons utiliser le pilote Chrome dans cet exemple.

http://www.seleniumhq.org/download/

4

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

5

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

6

6

7

8- Vérifiez que votre grille de sélénium est correctement opérationnelle

8

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é

9

http://127.0.0.1:4444/wd/hub

10

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.

Il y a quelques exemples utiles @ ce lien:

https://jmeter-plugins.org/wiki/WebDriverSampler/

11

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…..

12

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)

13

14- Affichez les résultats globaux des tests répertoriés ou graphiques. (Graphique Agrégé)

14

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.

15

C’est tout ! 🙂

16

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

 ozgur kaya

Ö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.

Write a Comment

Votre adresse e-mail ne sera pas publiée.