【问题标题】:Nightwatcher selenium. How to press: CTRL + SHIFT + j守夜人硒。如何按下:CTRL + SHIFT + j
【发布时间】:2020-08-28 17:57:29
【问题描述】:

我尝试了所有我想出的组合,但没有成功。

browser.keys( [ browser.Keys.CONTROL, browser.Keys.SHIFT, 'j' ] )

browser.keys( browser.Keys.CONTROL + browser.Keys.SHIFT + 'j'  )

browser.setValue('.some_elem',  [ browser.Keys.CONTROL, browser.Keys.SHIFT, 'j' ] )

browser.keys( [ browser.Keys.CONTROL, browser.Keys.SHIFT, 'j', browser.Keys.NULL ] )

browser.keys( [ browser.Keys.CONTROL, browser.Keys.SHIFT, 'j' ] )
browser.keys( browser.Keys.NULL )


browser.keys( browser.Keys.CONTROL )
browser.keys( browser.Keys.SHIFT )
browser.keys( 'j' )
browser.keys( browser.Keys.NULL )

等等

知道如何让它工作吗? 谢谢。

【问题讨论】:

    标签: selenium nightwatch


    【解决方案1】:

    官方文档介绍了键盘操作以及如何按下修饰键(CONTROL、SHIFT、ALT)。 Selenium doc > Keyboard

    Java 演示:

    Actions actionProvider = new Actions(driver);
    
    // Press CTRL + SHIFT + j
    Action keydown = actionProvider.keyDown(Keys.CONTROL).keyDown(Keys.SHIFT).sendKeys("j").build();
    
    keydown.perform();
    

    您可以在此处找到所有密钥:https://www.selenium.dev/selenium/docs/api/java/org/openqa/selenium/Keys.html


    另一种方式:

    这种方式我见过,但我自己没用过。

    element.sendKeys(Keys.chord(Keys.CONTROL, Keys.SHIFT, "j"));
    

    【讨论】:

    • 嗨。我正在使用带有 javascript 的 Nightwatch,但我没有在文档或 Internet 上的任何示例代码上看到这些方法或类(keyDown、Actions 等)。
    • @educob 抱歉,我没有使用 JavaScript 的 Nightwatch 经验。不过在 Selenium 的官方文档中有 PURE JavaScript 的演示,如下:await driver.actions().keyDown(Key.CONTROL).sendKeys('a').perform();。所以在我的回答中查看网址Selenium doc > Keyboard,然后切换语言选项卡。
    • 嗨,@educob,如果这是您问题的解决方案,请Accept the answerVote up it
    • 我已经对你的答案投了赞成票。我不知道有人必须接受答案,但我的问题仍然存在。干杯。
    • 抱歉给一个错误的问题添加评论,我会删除它。祝你好运,希望你的问题能尽快得到解决。
    猜你喜欢
    • 1970-01-01
    • 2010-10-23
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2020-03-30
    • 2014-11-07
    • 2020-05-10
    相关资源
    最近更新 更多