Как заставить транспортир нажать клавишу ввода?

Я пробовал это:

browser.actions().keyDown(protractor.Key.ENTER).keyUp(protractor.Key.Enter).perform();

который дает ошибку:

Error: Not a modifier key

Ответ 1

Keyup/Keydown ограничивается клавишами-модификаторами в WebDriver (shift, ctrl и т.д.). Я думаю, вы хотите

browser.actions().sendKeys(protractor.Key.ENTER).perform();

Ответ 2

Действия() не требуются.

Вы можете сделать что-то вроде:

var input = $('#someInput');
input.sendKeys(protractor.Key.ENTER);

Обновить: некоторые люди жаловались, что вы не отправляете вход в браузер. Если вы хотите сделать это, просто измените свой селектор:

$('body').sendKeys(protractor.Key.ENTER);

Ответ 3

Вот еще один способ сделать это

var enter = browser.actions().sendKeys(protractor.Key.ENTER);
enter.perform();

Ответ 4

Из документов здесь...

http://appfigures.github.io/webdriver-js-api-reference/symbols/webdriver.WebElement.html#sendKeys

var myInput = element(by.model('myModel.inputName'));
myInput.sendKeys(value, protractor.Key.ENTER);

Другие примеры из документов, указанных выше.

myInput.sendKeys("text was",
                 protractor.Key.CONTROL, "a", protractor.Key.NULL,
                 "now text is");
// Alternatively:
myInput.sendKeys("text was",
                 protractor.Key.chord(protractor.Key.CONTROL, "a"),
                 "now text is");