Comment utiliser AutoIT avec Selenium Webdriver: exemple de téléchargement de fichier

Table des matières:

Anonim

Qu'est-ce que AutoIt?

AutoIt est un langage de script gratuit conçu pour automatiser l'interface graphique de Windows et les scripts généraux. Il utilise une combinaison de mouvements de souris, de frappes au clavier et de manipulation de contrôle de fenêtre pour automatiser une tâche qui n'est pas possible avec le sélénium webdriver.

Dans ce didacticiel AutoIt, vous apprendrez-

  • Pourquoi utiliser AutoIt?
  • Comment télécharger et installer AutoIT
  • Recherche d'élément via l'identificateur d'élément et écriture de script sur l'éditeur AutoIT.
  • Fichier de téléchargement AutoIT dans Selenium Webdriver

Pourquoi utiliser AutoIt?

Selenium est un outil open source conçu pour automatiser les applications Web sur différents navigateurs, mais pour gérer l'interface graphique des fenêtres et les fenêtres contextuelles non HTML dans l'application. AutoIt dans Selenium est requis car ces activités basées sur les fenêtres ne sont pas gérées par Selenium.

En allant de l'avant dans ce didacticiel AutoIt, nous allons apprendre à télécharger un fichier dans le pilote Web sélénium à l'aide d'AutoIt. Ici, nous avons besoin de trois outils pour cela.

  • Pilote Web Selenium
  • Éditeur AutoIT et identifiant d'élément
  • La fenêtre que vous souhaitez automatiser

Comment télécharger et installer AutoIT

Étape 1) : accédez à ce lien.

Étape 2) : passez la souris sur les listes déroulantes «Autoit» et «Autoit Editor».

Étape 3) Cliquez sur l'option Téléchargements «AutoIT».

Étape 4) : Téléchargez "Autoit" en cliquant sur le bouton "Télécharger Autoit".

Étape 5) : Maintenant, téléchargez "Autoit editor" en cliquant sur le bouton "Téléchargements".

Étape 6): Cliquez sur le lien comme indiqué ci-dessous.

Après le téléchargement, vous obtiendrez deux fichiers d'installation comme indiqué dans l'écran ci-dessous, le premier est la configuration d' AutoIt version 3 et le second est Scitautoit3 .

Étape 6) : Pour installer AutoIT-Cliquez sur les deux configurations d'AutoIT un par un.

Étape 7) : Une fois l'installation réussie, ouvrez AutoIT Editor.

Allez dans 'C: \ Program Files (x86) \ AutoIt3 \ SciTE'

et cliquez sur le fichier 'SciTE.exe', l'éditeur AutoIT s'ouvre comme indiqué dans l'écran ci-dessous.

Étape 8) : Ouvre maintenant l'identificateur d'élément.

Allez dans 'C: \ Program Files (x86) \ AutoIt3'

Et cliquez sur le fichier 'Au3Info.exe', l'identifiant de l'élément s'ouvre comme indiqué dans l'écran ci-dessous.

Remarque: Une fois que vous avez terminé avec cet identifiant d'élément, vous devez fermer manuellement, il ne se fermera pas automatiquement.

Recherche d'élément via l'identificateur d'élément et écriture de script sur l'éditeur AutoIT.

Ci-dessous, nous verrons comment utiliser l'éditeur AutoIt et comment trouver un élément dans la fenêtre de téléchargement de fichier via l'identificateur d'élément AutoIT (l'identificateur d'élément est un outil comme l'IDE de sélénium, l'identificateur trouve l'élément de l'interface graphique de la fenêtre ou les popups non HTML et fournit l'attribut de élément comme le titre , la classe , l' instance ) et comment écrire un script sur l'éditeur AutoIT en utilisant 3 méthodes.

Par exemple: nous utiliserons la page «Écrivez-nous» de guru99 pour télécharger le CV (fichier Doc).

Après avoir cliqué sur le bouton «Choisir un fichier» de la page «Écrivez-nous», nous devons appeler le script AutoIT. Le contrôle est immédiatement transféré à autoit après avoir cliqué sur «Choisir un fichier» par l'instruction ci-dessous qui s'occupe du téléchargement d'une partie.

Runtime.getRuntime (). Exec ("E: \\ AutoIT \\ FileUpload.exe"); 

Enfin, lorsque nous exécutons le script sélénium, il remplira le formulaire-> télécharger le CV-> Soumettre le formulaire.

Étape 1) : Ouvrez maintenant l'identificateur d'élément - Allez dans 'C: \ Program Files (x86) \ AutoIt3' et cliquez sur le fichier 'Au3Info.exe', la fenêtre d'identificateur d'élément s'ouvre comme indiqué dans l'écran ci-dessous.

Étape 2) : Ouvrez maintenant la fenêtre de téléchargement de fichiers en cliquant sur «Choisir un fichier», qui est l'activité de Windows.

Étape 3) : Faites glisser l'outil de recherche sur l'élément de boîte "Nom de fichier" de la fenêtre de téléchargement de fichier pour trouver les informations d'attributs de base comme indiqué dans l'écran ci-dessous avec la flèche.

Nous pouvons obtenir la valeur des attributs, c'est-à-dire title = 'Open' , class = 'Edit' et instance = '1' comme indiqué ci-dessous. Ces valeurs sont utilisées dans l'écriture de l'exemple de script AutoIT comme expliqué à l'étape 4 ci-dessous.

Étape 4) : Ouvrez maintenant l'éditeur de script AutoIT, allez à 'C: \ Program Files (x86) \ AutoIt3 \ SciTE' et cliquez sur 'SciTE.exe' comme indiqué à l'étape 7 de la 1ère rubrique.

Commencez à écrire un script pour sélectionner un fichier à télécharger.

Il existe de nombreuses méthodes disponibles que nous pouvons utiliser dans un script en fonction des besoins, mais pour le moment, nous nous concentrerons sur les méthodes ci-dessous car ces méthodes sont nécessaires pour écrire un script de téléchargement de fichier:

  1. ControlFocus ("title", "text", controlID) // Définit le focus d'entrée sur un contrôle donné dans une fenêtre.
  2. ControlSetText ("title", "text", controlID, "File path that need to upload") // Définit le texte d'un contrôle.
  3. ControlClick ("title", "text", controlID) // Envoie une commande de clic de souris à un contrôle donné.

Vous pouvez voir qu'un certain nombre de méthodes sont affichées comme indiqué dans l'écran ci-dessous. La bonne caractéristique d'AutoIT est que c'est un peu comme Eclipse qui vous suggère certaines des méthodes.

Ici, dans l'éditeur AutoIT, nous avons sélectionné la méthode "control focus" . L'identifiant d'élément est déjà ouvert et minimisé car l'élément est déjà identifié à l'étape 3. Nous pouvons l'ouvrir en le maximisant.

Maintenant, nous allons prendre les valeurs de l'identificateur d'élément pour les méthodes 'ControlFocus' et 'ControlSetText' car ces méthodes fonctionnent sur le même élément, c'est-à-dire la zone de texte 'Nom de fichier' mais pour la méthode 'ControlClick', il faut capturer les valeurs de différents éléments, c'est-à-dire 'Ouvrir' bouton.

Valeurs des paramètres pour la méthode ControlFocus :

Cette méthode définit le focus sur la zone de texte «nom de fichier» de la fenêtre de téléchargement de fichier.

  • Le titre du premier paramètre est "Ouvert".
  • Nous ignorons le 2ème paramètre, le texte n'est pas obligatoire.
  • Le 3ème paramètre controlID est la combinaison de class = 'Edit' et Instance = '1', c'est-à-dire. «Edit1.»
    ControlFocus ("Open", "", "Edit1") // Cette méthode définit le focus d'entrée sur la zone de texte 'Nom de fichier'. 

Valeurs de paramètre pour la méthode ControlSetText :

Cette méthode est utilisée pour définir le chemin d'un fichier que nous devons télécharger dans la zone de texte «nom de fichier». D'une autre manière, on peut dire que cette méthode est utilisée pour définir le texte sur l'élément d'entrée.

  • Le titre du premier paramètre est "Ouvert".
  • Nous ignorons le 2ème paramètre, le texte n'est pas obligatoire.
  • Le 3ème paramètre controlID est la combinaison de class = 'Edit' et Instance = '1', c'est-à-dire "Edit1".
  • 4ème paramètre nouveau texte, nous passons le chemin du fichier que nous devons télécharger.
    ControlSetText ("Open", "", "Edit1", "E: \ Resume \ resume.doc") // Cette méthode entre le chemin du fichier d'un contrôle. 

Après avoir suivi l'étape ci-dessus, ne fermez pas les fenêtres (éditeur et identifiant d'élément), gardez-les ouvertes. Vous devez à nouveau ouvrir la fenêtre de téléchargement de fichiers pour trouver les attributs du bouton `` Ouvrir '' comme indiqué à l'étape 5 ci-dessous.

Étape 5) : Faites maintenant glisser l'outil de recherche sur l'élément de bouton "Ouvrir" de la fenêtre de téléchargement de fichiers pour trouver les informations d'attribut de base.

Les valeurs précédentes (c'est-à-dire les attributs de la zone de texte «Nom de fichier») sont remplacées par les nouvelles valeurs du bouton «Ouvrir». Vous pouvez voir que l'attribut de classe est maintenant changé en "bouton" qui était auparavant "éditer" dans la fenêtre d'identificateur d'élément AutoIT.

Nous pouvons obtenir la valeur des attributs, c'est-à-dire title = 'Open' , class = 'Button' et instance = '1' comme indiqué ci-dessous. Ces valeurs sont utilisées dans l'écriture du script Autoit comme expliqué ci-dessous.

Valeurs des paramètres pour la méthode ControlClick :

Cette méthode clique sur le bouton «Ouvrir» de la fenêtre de téléchargement de fichiers.

  • Le titre du premier paramètre est "Ouvert".
  • Nous ignorons le 2ème paramètre; le texte n'est pas obligatoire.
  • Le 3ème paramètre controlID est la combinaison de la classe et de l'instance, c'est-à-dire "Button1".
ControlClick ("Ouvrir", "", "Button1") // Cette méthode cliquez sur le bouton "Ouvrir" du téléchargeur de fichiers.

Étape 6) : Vous pouvez voir dans l'écran ci-dessous que le script AutoIT est terminé pour gérer le téléchargement de fichier.Maintenant, vous pouvez fermer l'identifiant d'élément et enregistrer le script sous "FileUpload" à l'emplacement donné (E: \ AutoIT).

Maintenant, vous ne pouvez pas exécuter ce script directement, vous devez compiler ce script.

Pour compiler ce script, vous avez deux options " compiler le script x64 " et " compiler le script x86 ", si vous avez une machine Windows 32 bits alors vous allez avec " compile script x86" et pour une machine Windows 64 bits alors vous allez avec " compilez le script x64 . "

Étape 7): fichier 'FileUpload exe' généré après la compilation, vous pouvez le voir dans l'écran ci-dessous. Nous pouvons maintenant utiliser ce fichier dans le script Selenium webdriver.

Nous allons maintenant utiliser ce script AutoIT dans le pilote Web Selenium. Vérifiez ci-dessous pour la sortie.

Fichier de téléchargement AutoIT dans Selenium Webdriver

Dans le script Selenium, nous trouvons les éléments du formulaire et remplissons les données dans chaque élément selon les besoins et téléchargeons le fichier 'CV.doc' en exécutant le fichier exe AutoIT généré à partir du script AutoIT, puis permettons de soumettre le formulaire dans le script Selenium AutoIt.

  • Ouvrez Eclipse et commencez à écrire du code.
  • Lorsque le sélénium clique sur le bouton Choisir un fichier, la boîte de téléchargement de fichiers s'ouvre.
  • Ensuite, nous devons appeler le script AutoIT, le contrôle immédiatement transféré vers AutoIT afin de télécharger un fichier, puis de contrôler le renvoi vers le sélénium comme indiqué ci-dessous.

Étape 1) : Développer le script sélénium dans eclipse.

  • La classe Runtime permet au script de s'interfacer avec l'environnement dans lequel le script s'exécute.
  • getRuntime () récupère le runtime actuel associé à ce processus.
  • Les méthodes exec () exécutent le script AutoIT (FileUpload.exe).
Runtime.getRuntime (). Exec ("E: \\ AutoIT \\ FileUpload.exe");

la ligne ci-dessus appellera le script AutoIT dans le sélénium et téléchargera le fichier.

Étape 2) : exécutez le script Selenium dans Eclipse.

importjava.io.IOException;import org.openqa.selenium.By;import org.openqa.selenium.WebDriver;import org.openqa.selenium.firefox.FirefoxDriver;classe publique FileUpload {public static void main (String [] args) lève IOException {Pilote WebDriver = nouveau FirefoxDriver ();driver.get ("http://demo.guru99.com/test/autoit.html");driver.findElement (By.id ("postjob")). click ();driver.findElement (By.id ("input_3")). sendKeys ("Gaurav");driver.findElement (By.id ("id_4")). sendKeys (" Cette adresse e-mail est protégée contre les robots spammeurs. Vous devez activer le JavaScript pour la visualiser.");driver.findElement (By.id ("input_4")). click ();// sous la ligne exécute le script AutoIT.Runtime.getRuntime (). Exec ("E: \\ AutoIT \\ FileUpload.exe");driver.findElement (By.id ("input_6")). sendKeys ("AutoIT in Selenium");driver.findElement (By.id ("input_2")). click ();driver.close ();}}

Étape 3) : Vérifiez la sortie, le fichier CV.doc a été téléchargé avec succès et un message de remerciement s'affichera.

Conclusion:

  • Identifiant d'élément téléchargé et installé et éditeur AutoIT.
  • Ouverture du site sur lequel effectuer l'opération.
  • L'identifiant d'élément identifie les éléments de la fenêtre de téléchargement de fichiers.
  • Préparation du script AutoIT dans l'éditeur à l'aide de l'identifiant d'élément.
  • Le script Autoit est utilisé dans le script selenium webdriver.
  • Exécution du script sélénium.
  • Sortie: le fichier a bien été téléchargé.

Cet article est rédigé par Gaurav Nigam