web-dev-qa-db-fra.com

Comment faire un rapporteur appuyer sur la touche Entrée?

J'ai essayé ceci:

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

ce qui donne l'erreur:

Error: Not a modifier key
53
bodine

Keyup/Keydown est limité aux touches de modification dans WebDriver (shift, ctrl, etc.). Je pense que tu veux

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

79
Jmr

Les actions () ne sont pas obligatoires.

Vous pouvez faire quelque chose comme:

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

Mise à jour: certaines personnes se sont plaintes de ce que vous n'envoyiez pas l'entrée à votre navigateur. Si vous voulez faire cela, changez simplement votre sélecteur:

$('body').sendKeys(protractor.Key.ENTER);
74
Andres D

Voici une autre façon de faire

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

Des docs ici ...

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);

Également d'autres exemples tirés des documents liés ci-dessus.

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");
7
jfountain