11
votes

Comment tester le flou - Firefox Selenium Driver?

J'utilise SELENIUM 2.24 Pilote Firefox pour tester une boîte d'entrée BLUR . Actuellement, après i SendKeys dans une zone de saisie, je laisse Selenium à cliquer sur une autre zone qui déclenche le flou de la boîte de saisie.

Cependant, je pense que ce n'est pas un bon moyen, quiconque sait un meilleur moyen de tester cela?

Merci beaucoup.


3 commentaires

Je ne me souviens pas si cela a travaillé pour l'événement Onblur, mais essayez de webelement.sendkeys (Keys.Return);


Si vous utilisez c #, vous pouvez insérer un onglet Char à la fin de la chaîne à envoyer à l'élément: ele.sendkeys ("mon chaîne \ t")


Certainement.sendkeys ("\ t") fonctionne également dans Java, solution la plus courte


5 Réponses :


5
votes

J'ai fait une enquête Lil. J'ai découvert que l'événement de feu n'est pas pris en charge à Selenium 2.0. Voir Détails . Donc, ce morceau de code a fonctionné pour moi: xxx

espoir maintenant cela vous aide)


1 commentaires

Malheureusement, en utilisant la méthode conduira à une exception: ............... à java.lang.reflect.constructor.newinstance (constructor.java:5 13) à org.openqa.selenium.remote.errorhandler. créée (erro rhandler.java:188) à org.openqa.selenium.remote.errorhandler.thhrowifreesponsefaile d Java: 472) à org.openqa.selenium.remote.remottewebdiver.executscript (remoewebdriver.java:38 1) à org.openqa.selenium.internal.seleniumemulation.javascriptLib Rary.CallembedDhtm Lutils (JavascriptLib Rary. Java: 82)



6
votes

Le sélénium webDiver ne déclenche pas correctement des événements comme Flou. Vous pouvez cependant les déclencher manuellement. En supposant que vous utilisez jQuery: xxx

ou sans jQuery: xxx


1 commentaires

Cette méthode fonctionne également pour HTMLunitDriver, ChromeRiver, SafaridRiver et InternetExExplorerRiver.



0
votes

Remplacez "ELEMENTID" avec ID d'élément correspondant. Ça fonctionne bien pour moi. "Driver" est votre pilote de sélénium

JavaScriptExteur JSEXEC = (JavascriptExecutor) Pilote; jsexec.executscript ("document.getelementByID ('" + ElementID + "'). Onblur ();");


0 commentaires

1
votes

merci Eugene.polschikov. Je devais changer la fonction pour appeler triggerhandler code> pour le faire fonctionner pour moi. Voir ce qui suit - il suffit de remplacer "Element-ID" avec l'ID de votre élément.

JavascriptExecutor jsexec = (JavascriptExecutor) driver;
StringBuilder stringBuilder = new StringBuilder();
stringBuilder.append("var x = $('" + element-id + "');");
stringBuilder.append("x.triggerHandler('blur');");
jsexec.executeScript(stringBuilder.toString());


0 commentaires

6
votes

Certains éléments n'ont pas de discriminateur approprié à des fins de test (par exemple, un identifiant ou un autre sélecteur CSS que vous souhaitez être lié à vos tests).

heureusement, la notion d'un ActiveLement Extentions. Donc, si la fonctionnalité de flou de l'élément est ce que vous souhaitez tester, une manière javascript native (non dépendante sur jQuery ou similaire) pour tester cela est la suivante: xxx


0 commentaires