Sendkeys en sélénium

Sendkeys en sélénium
Cet article se concentre sur la méthode SendKeys () en sélénium. Il est utilisé pour envoyer les données au navigateur et interagir avec le champ de saisie du site Web pour effectuer un test d'automatisation. Dans cet article, un exemple de formulaire de connexion automatisé est implémenté qui reçoit les données via la méthode SendKeys (). Pour ce faire, nous effectuons plusieurs étapes très importantes et nécessaires dans Java JDK et Eclipse en utilisant le code du framework Selenium pour l'exécution du programme. Avant d'écrire le script, nous avons tendance à installer le Java JDK et l'éclipse, à ajouter les bibliothèques de pots de sélénium et à tester des pots et à configurer les dépendances avec les pilotes de navigateur.

SendKeys dans Selenium webdriver

Lorsque nous travaillons avec le contrôle des tests d'automatisation via des pots de sélénium, nous ne sommes pas seulement capables de récupérer les données des éléments Web, mais aussi capables d'envoyer les données aux éléments Web. SendKeys () est la méthode en sélénium pour envoyer les données telles que int, char et symboles dans le champ de saisie. Les éléments actuels de la page Web qui sont utilisés pour identifier les éléments pour recevoir les données sont appelés localisateurs tels que l'ID d'élément, le nom, le nom de la classe, etc. Les webdrivers de sélénium sont utilisés pour interagir entre les bibliothèques de sélénium et les navigateurs.

Il existe deux étapes faciles dans la méthode SendKeys () pour envoyer les données dans le navigateur:

  1. La première étape est l'utilisation des localisateurs pour identifier les champs d'entrée particuliers tels que la zone de recherche, l'adresse e-mail, le nom d'utilisateur, le mot de passe, etc.
  2. La deuxième étape est la méthode SendKeys ().

Comment passer la méthode Selenium Sendkeys sous forme

Dans ce tutoriel, nous utilisons le formulaire de connexion du site «SwagLabs». Utilisez la méthode SendKeys () pour transmettre la valeur dans les champs d'entrée «Nom d'utilisateur» et «Mot de passe» et cliquez automatiquement dans le bouton de connexion.

Discutons du processus étape par étape pour exécuter le code du formulaire de connexion.

Étape 1: Site Web à utiliser

Considérez, pour l'illustration, une page de compte d'utilisateur de connexion située sur https: // www.satin.com /.

Un formulaire de connexion avec les champs «nom d'utilisateur» et «mot de passe» est illustré dans la figure précédente.

Maintenant, le webdriver doit les reconnaître pour compléter automatiquement les données dans les deux champs. Comme discuté précédemment, les localisateurs peuvent également être utilisés pour cela. Une fois que nous avons localisé les pièces nécessaires, il ne reste plus qu'à utiliser la méthode SendKeys () pour fournir explicitement les valeurs nécessaires.

Étape 2: Configurez le webdiverManager

WebDriverManager travaille comme une API en sélénium. Cela permet d'automatiser la gestion de la compatibilité des différentes versions des Séléniums WEBDrivers telles que ChromEdriver, Getkodriver et Firefox. Il gagne le temps en ne téléchargeant pas et en ajoutant les bibliothèques de la dernière version des webdriverses.

Le script suivant pour configurer le webDriverManager doit être utilisé:

Webdrivermanager.chromedriver ().installation();

Étape 3: Créez une classe de vide public

Dans cette étape, nous commençons à écrire le code réel. Créons la classe de vide et passons la méthode SendKeys ().

Le script suivant est utilisé pour créer le nom de la classe Sendkey:

classe publique Sendkey

Étape 4: Configurer le webdriver

WebDrivers permet à l'interaction entre le sélénium et le navigateur d'effectuer le test d'automatisation Web en aidant à envoyer et à recevoir les données.

Dans cette étape, nous configurons le pilote de navigateur Chrome via le script suivant:

Webdrivermanager.chromedriver ().installation();
Chromedriver Driver = new ChromEdriver ();

Étape 5: Utilisez get () pour ouvrir la page Web

Dans cette étape, nous utilisons la méthode get () pour ouvrir le site URL donné dans le navigateur Chrome.

Utilisez la méthode de script suivante pour le faire:

conducteur.get ("https: // www.satin.com / ");

On peut voir dans le chiffre suivant que Chrome est contrôlé par le logiciel de test automatisé.

Étape 6: Obtenez les champs d'entrée

Pour obtenir les champs, nous avons besoin des localisateurs tels que le nom, la classe et l'ID. Dans cet exemple, l'ID de localisateur est utilisé, ce qui signifie trouver le champ de saisie par ID.

Dans la figure suivante, le champ de saisie du nom d'utilisateur a id = nom utilisateur .

Dans la figure suivante, le champ de saisie du mot de passe a id = mot de passe .

La méthode FindElement et par classe sont utilisées pour faciliter la recherche automatique des ID sur le site Web.

Le script suivant est utilisé pour obtenir les champs d'entrée:

conducteur.findElement (par.id ("nom utilisateur")).sendKeys ("standard_user");
conducteur.findElement (par.id ("mot de passe")).sendKeys ("Secret_sauce");

De cette façon, vous pouvez spécifier les éléments pour obtenir les champs d'entrée.

Étape 7: Obtenez le bouton de connexion XPATH

Pour obtenir le champ du bouton de connexion, nous avons besoin d'un localisateur XPATH.

Obtenez le XPATH du bouton en suivant les étapes:

> Site> Inspecter> Cliquez avec le bouton droit sur le code du bouton> Sélectionnez Copier> Sélectionnez Full XPATH

Dans cette étape, la méthode FindElement et par classe sont utilisées pour faciliter la recherche automatique du XPath sur site.

> findElement (par.Xpath)
> Xpath: / html / body / div / div / div [2] / div [1] / div [1] / div / form / entrée

Le script suivant est utilisé pour obtenir le XPATH de la connexion:

conducteur.findElement (par.xpath ("/ html / body / div / div / div [2] / div [1] / div [1] / div / form / input")).Cliquez sur();

Étape 8: Fermez le navigateur

Dans la dernière étape, lorsque le compte d'utilisateur est connecté par la valeur automatisée de la valeur de SendKeys, fermez le navigateur à l'aide du .Fonction de clôture.

Voici comment vous pouvez utiliser la méthode Close ():

conducteur.fermer();

Reportez-vous au code complet suivant et consultez la sortie:

package ui;
org d'importation.openqa.sélénium.Par;
org d'importation.openqa.sélénium.chrome.Chromedriver;
Importer IO.github.bonigarcia.WDM.WebDriverManager;
classe publique Sendkey
public static void main (String [] args)
Webdrivermanager.chromedriver ().installation();
Chromedriver Driver = new ChromEdriver ();
conducteur.get ("https: // www.satin.com / ");
conducteur.findElement (par.id ("nom utilisateur")).sendKeys ("standard_user");
conducteur.findElement (par.id ("mot de passe")).sendKeys ("Secret_sauce");
conducteur.findElement (par.xpath ("/ html / body / div / div / div [2] / div [1] / div [1] / div / form / input")).Cliquez sur();
conducteur.fermer();

Dans l'exemple de code précédent, nous utilisons l'ID de localisation pour trouver le «nom d'utilisateur» et «mot de passe» en utilisant le by.classe de localisateur.

Après avoir exécuté le code, les champs d'entrée sont automatiquement identifiés par les localisateurs, puis remplissent automatiquement les valeurs dans ces champs en passant les valeurs clés via SendKeys ().

Après avoir reçu les valeurs dans les champs d'entrée, cliquez sur le bouton de connexion en récupérant le xpath du bouton de connexion. Enfin, connectez-vous à la forme avec succès. Le navigateur est fermé automatiquement après que le compte d'utilisateur soit connecté.

Maintenant, vous comprenez comment passer la méthode Selenium Sendkeys en forme. Parlons d'une illustration différente où nous démontrons comment utiliser la méthode SendKeys () dans le sélénium webdriver pour télécharger un fichier.

Comment télécharger un fichier à l'aide de la méthode SendKeys ()

La technique la plus simple pour télécharger un fichier à l'aide du sélénium webdriver est la méthode SendKeys. Trois étapes simples sont nécessaires pour cela:

Étape 1: sélectionnez un bouton de fichier

Dans la première étape, nous devons sélectionner le bouton «Choisir le fichier». Cela sélectionne le fichier que vous souhaitez télécharger. La commande qui sélectionne un fichier est donnée dans les éléments suivants:

WebElement uploadMyFile = pilote.findElement (par.id ("choosemyfile"));

Ici, vous pouvez voir que nous avons pris l'ID comme «Choosemyfile» et c'est pour la WebElement.

Étape 2: sélectionnez votre fichier

Maintenant, choisissez le fichier de votre ordinateur que vous souhaitez télécharger. Donnez l'emplacement du fichier sur notre système. Le code pour choisir le fichier à télécharger est fourni ici:

téléchargement.SendKeys ("C: \\ MyFile1.SMS");

Étape 3: Téléchargez votre fichier

Pour télécharger avec succès le fichier, vous devez maintenant cliquer sur le bouton Télécharger. Vous devez exécuter le code dans la ligne suivante pour accomplir cela.

mon chauffeur.findElement (par.id ("uploadmyfile")).Cliquez sur();
Nous fournissons le code complet suivant pour votre référence:
Casses de tests de package;
Importer Java.Io.IoException;
org d'importation.openqa.sélénium.Par;
org d'importation.openqa.sélénium.WebDriver;
org d'importation.openqa.sélénium.WebElement;
org d'importation.openqa.sélénium.chrome.Chromedriver;
org d'importation.tester.annotations.Test;
classe publique uploadMyfile
@Test
public void myFileUploadTest () lève ioException
Système.SetProperty ("WebDriver.chrome.pilote "," C: \\ work \\ pilote.exe");
WebDriver myDriver = new ChromEdriver ();
mon chauffeur.get ("https: // mysite.com ");
WebElement uploadMyFile = pilote.findElement (par.id ("choosemyfile"));
téléchargement.SendKeys ("C: \\ MyFile1.SMS");
mon chauffeur.findElement (par.id ("uploadmyfile")).Cliquez sur();

Dans le code précédent, vous pouvez voir que les modules requis sont chargés en premier. Ensuite, nous avons créé une classe dans laquelle nous avons initié l'objet pilote. Cela lance le navigateur. Après cela, nous sélectionnons le bouton «Choisissez Fichier» et spécifions le chemin du fichier que nous voulons télécharger. Enfin, le fichier est téléchargé avec succès lorsque nous cliquons sur le bouton.

Conclusion

Ce guide d'article illustre l'utilisation de la méthode SendKeys () à l'aide du framework Selenium pour passer un nom d'utilisateur et un mot de passe au formulaire de connexion via un outil de contrôle automatique. À l'aide de la langue java, nous écrivons le code pour définir le pilote du navigateur, lancez le pilote du navigateur et passons les clés via le localisateur tel que ID, XPATH, et se connectez-vous au compte. En fin de compte, nous avons démontré les résultats sur le navigateur qui montrent que les SendKeys () passent les valeurs de champ de saisie via IDS. Cliquez automatiquement sur le bouton de connexion. Enfin, fermez le navigateur. Nous avons également expliqué comment vous pouvez télécharger un fichier spécifique à l'aide de la méthode SendKeys (). Cet article contient toutes les informations requises pour vous aider à démarrer.