Je voudrais simuler un utilisateur en appuyant sur Maj-entrer dans une zone de texte. Voici le code que je travaille avec: si je veux simuler appuyer sur le bouton ENTER, je peux dire P> textarea.SendKeys(Keys.Enter);
5 Réponses :
Plus simple que prévu. Puisque SendKeys prend une chaîne et que les constantes statiques des clés sont toutes des cordes, elles peuvent simplement être concaténées ensemble comme ceci:
textarea.SendKeys(Keys.Shift + Keys.Enter);
Heureux cela a fonctionné pour vous. Malheureusement, cela ne fonctionne pas pour moi dans IE9 ou Chrome: .SendKeys (keys.control + "a"); code> toutes suggestions?
J'ai eu un succès limité à obtenir le sélénium pour travailler du tout dans IE. Je regarderais dans les paramètres de sécurité de votre navigateur pour voir s'il y a quelque chose à empêcher le sélénium de contrôler complètement le navigateur.
@BretveSenstra, essayez d'utiliser .SendKeys (Keys.Control + "A"); code> au lieu de .SendKeys (Keys.Control + "A"); code>
Essayez webelement.sendkeys (clés.leftcontrol + "a"); code>
en Java, nous avons ou p> Méthode code>, cette méthode enverra une séquence de touches ensemble:
S'il y a quelque chose que vous pourriez faire encore et encore, cela vaut peut-être la peine de faire une méthode d'extension. Je l'ai fait depuis puis je viens d'appeler .clear () code> ne fonctionne pas dans notre application Web pour une raison quelconque. Au lieu d'envoyer toujours un Ctrl + A code> et \ b code>, je viens de l'étendre avec ceci: DYNEL.BLANK (); code> et cela fonctionne bien. p> p>
Merci pour cette idée. Je l'ai modifié pour renvoyer l'élément afin de la chaîner ensemble les commandes. [Élément] .Clearfield (). SendKeys ("titre")
Pour moi, sur C # uniquement cette variation fonctionne:
actions.KeyDown(Keys.Control);
actions.SendKeys("a");
actions.KeyUp(Keys.Control);
Voici comment Keys.Chord () est implémentée dans JavaScript: https: // github. com / seleniumHQ / selenium / blob / d8ddddb4d83972df0f565ef65264bcb733e7a94584 / JavaScript / selenium-webdiver / lib / entré.js # L135 P>
qui est déjà assez proche de la meilleure réponse acceptée, je pense que la seule différence est le personnage null ajouté à la fin. Vous pouvez probablement faire une méthode d'assistance pour vous aider à vous rappeler, mais malheureusement openqa.selenium.keys code> est une classe statique et toutes les propriétés de retour des propriétés. Donc, si vous vouliez faire une belle enveloppe autour de celle-ci, vous devrez probablement également envelopper la classe des touches. P>