Fermer

décembre 6, 2023

Plongez dans l’API Actions / Blogs / Perficient


Selenium 4, la dernière itération de Selenium WebDriver, introduit plusieurs améliorations pour rationaliser l’automatisation Web. Une amélioration notable est la refonte de l’API Actions. Cette interface de bas niveau fournit des actions de saisie de périphérique virtualisées au navigateur Web, offrant un contrôle granulaire sur les interactions entre le clavier, la souris, le stylet, les appareils tactiles et même la molette de défilement. Dans ce blog, nous approfondirons les subtilités de l’API Actions, en explorant ses composants clés et en fournissant des exemples pratiques.

Comprendre l’API Actions

  1. Composants clés : Générateur d’actions

L’API Actions introduit un ensemble complexe mais puissant de blocs de construction de bas niveau. Ces blocs incluent des commandes pour les entrées de touches, les entrées de pointeur et les entrées de roue. L’Action Builder permet la construction de commandes d’action individuelles affectées à des entrées spécifiques, qui peuvent être enchaînées. La méthode perform associée est ensuite appelée pour les exécuter collectivement.

  1. Commande Pause

Alors que les mouvements du pointeur et le défilement de la molette permettent aux utilisateurs de définir une durée pour l’action, la commande pause devient pratique pour insérer un délai entre les actions. Ceci est crucial pour garantir une exécution correcte dans les scénarios où une pause est nécessaire.

WebElement clickable = driver.findElement(By.id("clickable"));

new Actions(driver)

    .moveToElement(clickable)

    .pause(Duration.ofSeconds(1))

    .clickAndHold()

    .pause(Duration.ofSeconds(1))

    .sendKeys("abc")

    .perform();

  1. Libérer toutes les actions

Une considération importante est que le pilote conserve l’état de tous les éléments d’entrée tout au long d’une session. La méthode releaseAll devient utile pour réinitialiser l’état en relâchant toutes les touches et boutons de pointeur actuellement enfoncés.

((RemoteWebDriver) driver).resetInputState();

Actions du clavier dans Selenium 4

  1. Représentation des clés

Selenium 4 fournit une représentation de n’importe quel périphérique d’entrée clé pour interagir avec une page Web. En plus de prendre en charge les caractères ASCII, chaque touche du clavier a une représentation qui peut être enfoncée ou relâchée dans des séquences désignées. Selenium attribue des valeurs Unicode aux touches du clavier pour une utilisation dans l’automatisation.

  1. Exemple d’actions du clavier

Voici un exemple illustrant les actions au clavier à l’aide de l’API Actions :

new Actions(driver)

    .keyDown(Keys.SHIFT)

    .sendKeys("a")

    .keyUp(Keys.SHIFT)

    .sendKeys("b")

    .perform();

Cette séquence consiste à appuyer sur la touche Maj, à taper « a », à relâcher la touche Maj, puis à taper « b ».

  1. Méthode SendKeys

La méthode sendKeys est une méthode pratique de l’API Actions qui combine les commandes keyDown et keyUp en une seule action. C’est particulièrement utile lorsque vous devez saisir plusieurs caractères au milieu d’autres actions.

new Actions(driver)

    .sendKeys("abc")

    .perform();

Actions de la souris dans Selenium 4

  1. Présentation des actions de la souris

Semblable aux actions du clavier, Selenium 4 fournit une représentation de n’importe quel dispositif de pointeur permettant d’interagir avec une page Web. L’API Actions prend en charge diverses actions de la souris, notamment cliquer et maintenir, cliquer et relâcher, cliquer avec le bouton droit, double-cliquer et déplacer la souris.

  1. Exemple d’actions de la souris

Voici un exemple illustrant les actions de la souris à l’aide de l’API Actions :

WebElement clickable = driver.findElement(By.id("clickable"));

new Actions(driver)

    .clickAndHold(clickable)

    .perform();

Cette action consiste à cliquer et à maintenir le bouton gauche de la souris sur un élément cliquable.

  1. Scénarios d’utilisation en temps réel

Les actions de la souris trouvent des applications dans des scénarios tels que les applications de dessin sur canevas (pour gérer divers événements de pointeur) et le test des fonctionnalités de clic droit (à l’aide de la méthode contextClick).

Conclusion

L’API Actions améliorée de Selenium 4 permet aux testeurs et aux développeurs de contrôler avec précision les interactions entre le clavier et la souris. L’Action Builder, ainsi que des commandes telles que pause et releaseAll, ajoutent de la flexibilité et de la profondeur aux scénarios de test. Dans la prochaine partie de cette série, nous explorerons les actions avancées de la souris et du clavier et leurs applications. Restez à l’écoute pour un guide complet sur la maîtrise de l’API Actions de Selenium 4.






Source link

décembre 6, 2023