Recherche…


Introduction

Selenium Grid est un framework pour exécuter des tests distribués sur toute une gamme de périphériques de test. Il est utilisé pour tester des applications Web. Il est possible d'écrire des tests dans différents langages de programmation populaires, notamment C #, Groovy, Java, Perl, PHP, Python et Ruby. Les tests peuvent être exécutés sur une gamme de navigateurs Web sur des plates-formes telles que Windows, Linux et OS X.

C'est un logiciel open-source, publié sous la licence Apache 2.0: les développeurs Web peuvent le télécharger et l'utiliser sans frais.

Syntaxe

  • pour exécuter le fichier jar, voici la syntaxe de chaque fichier jar
  • java -jar <jar-file-full-name>.jar -<your parameters if any>

Paramètres

Paramètres Détails
rôle Est-ce ce qui dit le sélénium qu'il était hub ou node
Port Ceci permet de spécifier le port que le hub ou le node doit écouter.
centre Ce paramètre est utilisé dans le node pour spécifier l'URL du concentrateur
browserName Son utilisé dans le node pour spécifier le nom du navigateur comme Firefox, Chrome, Internet Explorer
maxInstances C'est là que l'instance du navigateur est spécifiée, par exemple. 5 signifie qu'il y aura 5 instances du navigateur que l'utilisateur spécifie sera présent.
nodeConfig Un fichier de configuration Json pour le noeud. Vous pouvez spécifier le rôle, le port, etc. ici
hubConfig Un fichier de configuration Json pour le noeud. Vous pouvez spécifier le rôle, le port, les instances max, etc. ici

Code Java pour Selenium Grid

String hubUrl = "http://localhost:4444/wd/hub"       
DesiredCapabilities capability = DesiredCapabilities.firefox(); //or which browser you want
RemoteWebDriver driver = new RemoteWebDriver(hubUrl, capability);

Création d'un hub et d'un noeud Selenium Grid

Créer un hub

Une configuration rapide pour la configuration d'un concentrateur et d'un nœud dans une grille de sélénium. Pour plus d'informations, voir: Grid 2 docs

Exigences

Pour configurer un hub de grille, vous avez besoin de ce qui suit:

Créer le hub

Pour créer un concentrateur, vous devez exécuter le serveur sélénium.

  1. Télécharger Selenium-server-standalone-.jar
  2. Ouvrez votre terminal et naviguez jusqu'au dossier où Selenium-server-standalone-.jar est
  3. Exécutez la commande suivante:
    1. Pour la configuration par défaut java -jar selenium-server-standalone-<Version>.jar -role hub
    2. Pour la configuration Json java -jar selenium-server-standalone-<Version>.jar -role hub -hubConfig hubConfig.json
  4. Ouvrez http: // localhost: 4444 / vous verrez un message suivant

entrer la description de l'image ici

En cliquant sur console -> View config pour afficher la configuration des détails du concentrateur.

Créer un noeud

Exigences

Pour configurer un hub de grille, vous avez besoin de ce qui suit:

Création du noeud

Maintenant, pour créer des nœuds pour le concentrateur

  1. Télécharger Selenium-server-standalone-.jar
  2. Téléchargez les navigateurs que vous souhaitez tester
  3. Téléchargez les pilotes pour les navigateurs que vous souhaitez tester
  4. Ouvrir un nouveau terminal et accéder à l'emplacement du fichier jar du serveur sélénium
  5. Exécutez la commande suivante:
    1. pour la configuration par défaut java -jar selenium-server-standalone-<VERSION NUMBER>.jar -role node
    2. Pour la configuration Json java -jar selenium-server-standalone-<Version>.jar -role node -nodeConfig nodeConfig.json
  6. Maintenant, allez à http: // localhost: 4444 / grid / console pour voir les détails du noeud

Configuration via Json

Un exemple de configuration pour un concentrateur:

java -jar selenium-server-standalone-<version>.jar -role hub -hubConfig hubConfig.json

{
    "_comment" : "Configuration for Hub - hubConfig.json",
    "host": ip,
    "maxSessions": 5,
    "port": 4444,
    "cleanupCycle": 5000,
    "timeout": 300000,
    "newSessionWaitTimeout": -1,
    "servlets": [],
    "prioritizer": null,
    "capabilityMatcher": "org.openqa.grid.internal.utils.DefaultCapabilityMatcher",
    "throwOnCapabilityNotPresent": true,
    "nodePolling": 180000,
    "platform": "WINDOWS"
}

Un exemple de configuration pour un noeud

java -jar selenium-server-standalone-<version>.jar -role node -nodeConfig nodeConfig.json

{
  "capabilities":
  [
    {
      "browserName": "opera",
      "platform": "WINDOWS",
      "maxInstances": 5,
      "seleniumProtocol": "WebDriver",
      "webdriver.opera.driver": "C:/Selenium/drivers/operadriver.exe",
      "binary":"C:/Program Files/Opera/44.0.2510.1159/opera.exe"
    },
    {
      "browserName": "chrome",
      "platform": "WINDOWS",
      "maxInstances": 5,
      "seleniumProtocol": "WebDriver",
      "webdriver.chrome.driver": "C:/Selenium/drivers/chromedriver.exe",
      "binary":"C:/Program Files/Google/Chrome/Application/chrome.exe"
    },
    {
      "browserName": "firefox",
      "platform": "WINDOWS",
      "maxInstances": 5,
      "seleniumProtocol": "WebDriver",
      "webdriver.gecko.driver": "C:/Selenium/drivers/geckodriver.exe",
      "binary":"C:/Program Files/Mozilla Firefox/firefox.exe"
    }
  ],
  "proxy": "org.openqa.grid.selenium.proxy.DefaultRemoteProxy",
  "maxSession": 5,
  "port": 5555,
  "register": true,
  "registerCycle": 5000,
  "hub": "http://localhost:4444",
  "nodeStatusCheckTimeout": 5000,
  "nodePolling": 5000,
  "role": "node",
  "unregisterIfStillDownAfter": 60000,
  "downPollingLimit": 2,
  "debug": false,
  "servlets" : [],
  "withoutServlets": [],
  "custom": {}
}


Modified text is an extract of the original Stack Overflow Documentation
Sous licence CC BY-SA 3.0
Non affilié à Stack Overflow