2016-05-23 107 views
3

在填写表单时,测试需要列出才能进入下一个字段。Selenium webdriver(javascript)标签输出

我得到的错误是:

InvalidArgumentError: Not a modifier key 

代码:

var key = require('selenium-webdriver').Key; 
var actionSequence = require('selenium-webdriver').ActionSequence; 

    new actionSequence(driver).keyDown(key.CONTROL).keyDown(key.TAB).perform().then(function(){ 
    console.log("Done selection?"); 
}); 

回答

2

keyDown行动只是为了修饰键:

key.CONTROL 
key.SHIFT 
key.ALT 
key.COMMAND 

要发送TAB键,使用.sendKeys

var key = require('selenium-webdriver').Key; 
var actionSequence = require('selenium-webdriver').ActionSequence; 

new actionSequence(driver).keyDown(key.CONTROL).sendKeys(key.TAB).perform().then(function(){ 
    console.log("Done selection?"); 
}); 
+0

谢谢。我用sendKeys而不是keyDown。但是测试没有列出,并且轮胎点击灰色的元素。 (InvalidElementStateError:元素被禁用,因此可能不会用于操作) – SUM

+1

为什么按Control键?你有没有试过只按'Tab'而不是'Ctrl + Tab'。请注意,要获取上一个元素,快捷方式是“Shift + Tab”。 –

+0

谢谢你的工作。 – SUM