Je fais des tests automatisés à l'aide de Selenium webdiver avec Ruby. J'ai besoin de cliquer sur un bouton. Je ne peux pas obtenir l'élément de bouton par ID ou CSS ou XPath car le bouton est transparent. Je voudrais utiliser la touche de tabulation et entrer dans la touche pour appuyer sur la touche.
Je peux utiliser la touche de tabulation pour obtenir le bouton ci-dessous: P>
@element.send_keys :tab @element --> any javascript element visible in the browser
4 Réponses :
Garder à l'esprit l'extrait: p>
Je peux utiliser la touche de tabulation pour obtenir le bouton comme p>
@ element.send_keys: onglet p>
@Element -> n'importe quel élément JavaScript visible dans le navigateur p>
Mais comment puis-je utiliser la touche ENTER sur le bouton ?? p> blockQuote>
Pour utiliser la touche Entrée du bouton, vous pouvez essayer l'une des solutions fournies à l'aide de Ruby ici . Cela parle essentiellement de l'envoi de la valeur
: retour code> et non le
: entrez code> valeur I.e
@ element.send_keys: retour code> et quelques informations supplémentaires. p>
mis à jour: strong> p>
Je pourrais fournir un certain code dans Java qui tente de mettre en œuvre le problème conceptuellement à l'aide de l'info fournie ici . Vous pouvez essayer de traduire pour l'API de Ruby Selenium correspondant. p>
Le code: p>
Builder Actions = Nouvelles actions (pilote); p>
Builder.Sendkeys (Élémentvisible, Keys.Tab) .Sendkeys (Keys.Return); p>
Action SecoueDetransPerentButton = Builder.Build (); P>
SOUMETTHETRANSPERENTTBUTTON.PERFORME (); P> blockQuote>
ça n'aide pas. Mon cas est que je ne peux pas obtenir l'élément de bouton. Mais j'ai toujours besoin de cliquer sur le bouton. Y a-t-il un autre meilleur moyen d'y parvenir? Merci
Dans le code de Ruby User1316 ressemble à
Envoyer Entrée dans Ruby:
@browser.action.send_keys("\n").perform
Je pense que cela ne fonctionne pas pour moi, comme si j'essaye d'aller à Google et de taper ASDF, puis de faire entrer manuellement cela fonctionne. ATTENDU QUE Si j'utilise IRB et que vous démarrez par programmation Google et que vous entrez par programme dans ASDF ou Tapez manuellement ASDF. Puis envoyer par programme par programme, cela ne fonctionne pas, tandis qu'une entrée manuelle ne fonctionne pas
Utilisation ref: https://www.rubydoc.info/gems / selenium-webdiver / sélénium / webdiver / clés p> Selenium :: WebDriver :: Keys :: Touches [: onglet] Code> P>