2012-04-06 15 views
6

Sto eseguendo test automatici utilizzando Selenium WebDriver con Ruby. Devo fare clic su un pulsante. Non riesco a ottenere l'elemento del pulsante da id o css o xpath poiché il pulsante è trasparente. Vorrei usare il tasto Tab e Invio per premere il pulsante.Premere TAB e quindi tasto INVIO in Selenium WebDriver con Ruby

posso utilizzare il tasto Tab per ottenere il pulsante, come di seguito:

@ element.send_keys: scheda @element -> Il codice JavaScript elemento visibile nel browser

Ma come si usa il Enter tasto sul pulsante?

Fondamentalmente ho bisogno di raggiungere premere il tasto Tab e quindi premere il tasto Invio per fare clic sul pulsante.

Sto usando selenio WebDriver @driver = Selenio :: WebDriver.for: firefox

ti prego, aiutami. Grazie in anticipo.

risposta

2

tenendo presente l'estratto:

posso usare il tasto tab per ottenere il pulsante come

@ element.send_keys: scheda

@element -> Il codice JavaScript elemento visibile in il browser

ma come si usa il tasto invio sul pulsante ??

Per utilizzare il tasto Invio sul pulsante, è possibile provare una delle soluzioni fornite utilizzando Ruby here. In pratica si tratta di inviare il valore :return e non il valore :enter i.e @element.send_keys :return e alcune informazioni aggiuntive.

aggiornamento:

mi potrebbe fornire un certo codice in Java che cerca di implementare il problema concettualmente utilizzando le informazioni fornite here. Potresti provare a tradurre per l'API Ruby Selenium corrispondente.

Il Codice:

azioni builder = nuove azioni (driver);

builder.sendKeys (elementVisible, Keys.TAB) .sendKeys (Keys.RETURN);

Azione submitTheTransperentButton = builder.build();

submitTheTransperentButton.perform();

+0

doesnot aiuto.Il mio caso è che non riesco a ottenere l'elemento pulsante. Ma ho ancora bisogno di fare clic sul pulsante. C'è qualche altro modo migliore per raggiungere questo obiettivo? grazie – AJJ

+0

Ho intenzione di aggiornare la soluzione precedente. Spero che sia d'aiuto. – Ziran

5

Nel codice di Ruby user1316 assomiglia

driver.action.send_keys(elementVisible, :tab).send_keys(elementVisible, :return).perform 
0

invio ENTER in Ruby:

@browser.action.send_keys("\n").perform 
Problemi correlati