Ho il seguente metodo di supporto per inserire una stringa in un campo di input e premere il tasto Invio, ma sembra che il tasto Invio non venga mai premuto. Vedo la stringa immessa nel campo di input, ma gli eventi che si verificano al momento dell'inserimento non sono mai accaduti.Come si simula il colpire entrare in un campo di input con Capybara e ChromeDriver?
Ho verificato in un browser effettivo che la chiave di invio attiva correttamente gli eventi previsti. Non sono sicuro di cosa mi stia perdendo.
def fill_and_trigger_enter_keypress(selector, value)
page.execute_script %Q(
var input = $('#{selector}');
input.val('#{value}');
input.trigger("keypress", [13]);
)
end
EDIT:
Ho anche provato il seguente inutilmente:
find('#q_name').native.send_keys(:return)
find('#q_name').native.send_keys(:enter)
non causano alcun errore, ma ancora nessuna entrare tasto premuto.
Perfetto, controllerò la gemma. Ma Capybara non dovrebbe essere il problema dal momento che sto inviando il jQuery direttamente al selenio, giusto? –