Come simulare la pressione di Invio nell'input di testo HTML con Selenium?
-
09-06-2019 - |
Domanda
In un'interfaccia web, ho un campo di testo.Quando l'utente inserisce il testo e accetta con invio, l'applicazione esegue un'azione.
Volevo testare il comportamento con il selenio.Sfortunatamente, invocando 'keypress' con chr(13) si inserisce la rappresentazione del carattere nel campo.
C'è un modo diverso dall'invio del modulo?Mi piacerebbe imitare l'interazione dell'utente prevista, senza scorciatoie...
Soluzione
Questo codice Java funziona per me:
selenium.keyDown(id, "\\13");
Notare la fuga.Probabilmente hai bisogno di qualcosa come chr(\13)
Altri suggerimenti
Ho finito per usare selenium.keyPress(id, "\\13");
Anche se non l'ho testato, immagino che tu possa usare " " aggiunto a una stringa per simulare una nuova riga.Se non cercare le lingue equivalenti a "Environment.newline;" ?
È passato un po' di tempo dall'ultima volta che ho dovuto farlo, ma mi sembra di ricordare di aver dovuto utilizzare uno snippet javascript per eseguire il ritorno del carrello invece di utilizzare la funzione di pressione dei tasti Selenium.
È possibile utilizzare WebElement.sendKeys (keys.enter);