Traîner et tomber avec le sélénium

Traîner et tomber avec le sélénium
Selenium offre diverses fonctionnalités aux utilisateurs et l'un d'eux est un glisser-déposer. Dans cet article, nous essaierons de comprendre les fonctionnalités de glisser-déposer de Selenium Web Driver, nous comprendrons également comment l'utiliser et où faire. Si vous êtes nouveau dans ce concept, cet article contient toutes les informations dont vous avez besoin pour commencer.

Quelle est la méthode DragandDrop en sélénium?

Selenium est utilisé pour évaluer les applications Web sur une variété de systèmes d'exploitation et de navigateurs. De nombreuses langues de codage peuvent être utilisées pour créer des scripts de test de sélénium. Il s'agit notamment de Java, Python, C # et d'autres. Le processus de déplacement d'un fichier d'un dossier à un autre dans tout type de navigateur Web (Firefox, Google Chrome, Windows Explorer, Opera, etc.) à l'aide de la méthode de traînée et de dépôt est réalisée avec une souris. Lorsqu'un utilisateur traîne (déplace) un élément Web à partir d'un seul endroit et le dépose par la suite à un autre endroit spécifique, ce processus est appelé la méthode de glisser-déposer.

Certaines applications Web peuvent automatiser la pratique du glisser-déposer des objets Web. Par exemple, les déplacer d'un bout à une autre fin en les laissant tomber sur un endroit ou un élément spécifique via le pilote Web Selenium. Le pilote Web Selenium peut être utilisé pour contrôler les opérations de glisser-déposer de ces éléments.

Grâce à cette fonctionnalité du pilote Web Selenium, les développeurs Web peuvent facilement transférer des données ou tout type de document via la méthode de glisser-déposer. Nous vous comprendrons également l'ensemble du processus par le codage et certaines des illustrations d'image

Voici un schéma simple pour comprendre la méthode de traînée et de dépôt.

Méthodes de traînée et de suppression de divers éléments dans le sélénium:

Il existe plusieurs méthodes de traînée et de suppression de plusieurs éléments en sélénium. Ici, nous en discuterons.

  • Dans le premier cas, nous draganddrop (source, cible).construire().effectuer();
  • Dans le deuxième cas, nous agissons ClickandHold (de). Construire().effectuer(); loi.
  • Dans le troisième scénario, nous agissons DragAndDropby (Source, Xoffset, Yoffset).effectuer();

En utilisant certains de ces scénarios, nous pouvons traîner plusieurs éléments de sélénium.

La différence entre draganddrop () et draganddropby ()

La seule différence entre DragAndDrop () et DragAndDropBy () est que dans la fonction DragAndDropBy (), le curseur est déplacé vers la WebElement cible par un décalage. Alors que, dans la méthode DragandDrop (), le pointeur est déplacé directement vers la WebElement.

La différence entre la guette et la drop et la construction de la classe d'action

Selenium fournit une action.Classe DragandDrop pour déplacer les éléments d'un bout à un autre.

La classe Action Make, en revanche, utilise les coordonnées des éléments pour déplacer un élément d'un bout à l'autre.

Quelle est la syntaxe de la méthode de traînée et de dépôt dans le sélénium?

Nous utiliserons la syntaxe suivante pour la méthode de glisser-déposer:

Actions.DragAndDrop (Sourcelocator, DestinationLocator)

Donc, ici, nous verrons comment passer ces deux paramètres à travers la méthode de glisser-déposer.

  1. SourceloCater, l'élément est le premier paramètre que nous allons faire glisser
  2. L'élément «DestinationLocator» est le deuxième paramètre sur lequel le premier élément doit être abandonné.

La syntaxe que nous utiliserons est donnée ci-dessous:

Actions.DragAndDropby (Sourcelocator, pixel axe x de destination, pixel de l'axe y de destination)

Exemple 1:

Ici, nous allons vous montrer un système de commande de pizza dans lequel nous parlerons de la stratégie de glisser-déposer. Vous pouvez d'abord voir la figure suivante, puis passer au code.

Essayons de comprendre la méthode de traînée et de dépôt dans le sélénium de la figure ci-dessus.

L'élément de facture est traîné et l'élément de facture est tombé sur le côté spécifique par la méthode de glisser-déposer.

Ci-dessous, nous avons fourni l'extrait complet du code auquel vous pouvez vous référer pour une compréhension claire.

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.openqa.sélénium.interactions.Actions;
org d'importation.tester.annotations.Test;
classe publique DragandDrop
WebDriver Driver;
@Test
public void dragndrop ()

Système.SetProperty ("WebDriver.chrome.Conducteur "," E: // Selenium // Selenium_jars // ChromEdriver.exe");
ddriver = new chromedriver ();
ddriver.get ("http: // démo.webboxzone.com / test / drag_drop.html ");
WebElement de = ddriver.findElement (par.xpath ("// * nid = lbill1 / a"));
WebElement à = ddriver.findElement (par.xpath ("// * nid = 'orderl / li"));
Actions ACT1 = NOUVELLES ACTIONS (DDRIVER);
acte 1.DragandDrop (de, à).construire().effectuer();

Dans la section suivante, nous avons donné une explication appropriée du code ci-dessus afin que vous puissiez le comprendre mieux.

Nous avons exécuté le code ci-dessus dans Chrome Browser, puis j'ai fait glisser l'élément de facture. Et déposez-le dans la zone de placement des comptoirs en espèces et des commandes via la méthode de glisser-déposer. Comprenons le code ligne par ligne.

Dans la première section, nous avons chargé les bibliothèques requises. Après cela, un glisser-déposer de classe est créé. Ensuite, nous avons commencé le navigateur et ouvert la page Web.

Voir le morceau de code suivant. Ici, nous avons commencé par capturer le premier élément dont nous avons besoin pour traîner dans la variable «de.«Comme vous pouvez le voir, nous ciblons l'élément.

Farce
De = ddriver.findElement (par.xpath ("// * [@ id = 'bill'] / a"));

Cette section du code fait glisser la facture d'identification vers la section de paiement.

Après cela, nous ciblons le 2ème élément qui est censé supprimer le premier élément de la variable appelée «TO». Le code est donné ici. Cela abandonnera la «facture» de l'ID à l'élément «commande» dans la section de paiement.

WebElement à = ddriver.findElement (par.xpath ("// * [@ id = 'order'] / li"));

Le code «Actions Builder = Nouvelles actions (pilote);» Créera un objet de la classe Actions pour construire des actions composites. La dernière ligne de l'exemple de code exécutera la fonction de glisser-déposer.

Exemple n ° 2:

Dans cet exemple de programme, nous utiliserons le jQueryui.COM Site Web pour expliquer la méthode de glisser-déposer.

Ci-dessus est l'interface que nous utilisons. Nous allons glisser la boîte nommée «Dragme-moi vers ma cible» vers la boîte nommée «Drop Here.»Selenium WebDriver Coding sera utilisé pour le faire.

Maintenant, comprenons comment exécuter le code suivant:

Webdrivermanager.chromedriver ().installation();
ChromEdriver ddriver = new chromEdriver ();
ddriver.get ("https: // jQueryui.com / droppable / ");
ddriver.gérer().fenêtre().maximiser();
Frame WebElement1 = pilote.findElement (par.xpoth ("// * [@ id = rContent] / iframe")); conducteur.basculer vers().trame (trame1);
Weblelement drag_me = ddriver.findElement (par.id ("draggable"));
WebElement drop_me = ddriver.findElement (par.id ("droppable"));
Actions Action1 = Nouvelles actions (ddriver);
action1.draganddrop (drag_me, drop_me).effectuer();

Maintenant, dans cette méthode de glisser-déposer, les deux arguments sont transmis: l'une est la glisserrette et l'autre est une baisse de WebElement.

La ligne suivante du code ciblera l'ID d'élément nommé «draggable» pour le faire glisser à partir de là.

Weblelement drag_me = ddriver.findElement (par.id («draggable»));

Dans cette ligne de code suivante, nous cibleons l'ID d'élément nommé «Droppable» pour supprimer le premier élément sur ce.

WebElement drop_me = ddriver.findElement (par.id («droppable»));

Lorsque nous exécutons ces lignes de code, la première image nommée «glisser-moi vers ma cible» passe à la case «Drop Here».

Donc, après avoir écrit la ligne de code ci-dessus, nous avons cette image.

Conclusion

Cet article portait sur la méthode de traînée et de dépôt dans le sélénium. Premièrement, nous devons mentionner exactement quelle est la méthode de glisser-déposer. Après cela, nous vous avons aidé à comprendre la méthode de traînée et de passer à travers deux exemples appropriés. Ainsi, dans ces exemples (mentionnés ci-dessus), nous avons utilisé les méthodes d'action du pilote Web, et nous démontrons la capacité de glisser-déposer de l'application Web Selenium. Pour faire glisser et supprimer l'élément, nous avons utilisé la fonction de glisser-déposer de la classe Actions. Ces paramètres sont Sourcelocator et DestinationLocator. Nous comprenons la procédure de glisser-déposer à l'aide du Sourcelocator, de l'axe X et des pixels de l'axe Y du destination de destination.