我正在使用Selenium WebDriver和Ruby进行自动化测试。我需要点击一个按钮。由于按钮是透明的,我无法通过id或css或xpath获取按钮元素。我想使用Tab键和Enter键按下按钮。
我可以使用Tab键获取如下按钮:
@element.send_keys :tab
@element --> any javascript element visible in the browser
但是如何使用按钮上的Enter键?
基本上我需要按Tab键然后按Enter键点击按钮。
我正在使用Selenium WebDriver @driver = Selenium::WebDriver.for :firefox
答案 0 :(得分:6)
在Ruby中,user1316的代码类似于
driver.action.send_keys(elementVisible, :tab).send_keys(elementVisible, :return).perform
答案 1 :(得分:2)
记住摘录:
我可以使用Tab键将按钮设为
@ element.send_keys:tab
@element - >任何可见的javascript元素 浏览器
但是如何使用按钮上的回车键?
要使用按钮上的回车键,您可以尝试使用Ruby here提供的解决方案之一。这基本上是关于发送:return
值而不是:enter
值,即@element.send_keys :return
和一些其他信息。
<强>更新:强>
我可以在Java中提供一些代码,它们尝试使用提供的信息here在概念上实现问题。您可以尝试翻译相应的Ruby Selenium API。
守则:
Actions builder = new Actions(driver);
builder.sendKeys(elementVisible,Keys.TAB).sendKeys(Keys.RETURN);
动作submitTheTransperentButton = builder.build();
submitTheTransperentButton.perform();
答案 2 :(得分:0)
在ruby中发送ENTER:
@browser.action.send_keys("\n").perform
答案 3 :(得分:0)
使用Selenium::WebDriver::Keys::KEYS[:tab]
参考:https://www.rubydoc.info/gems/selenium-webdriver/Selenium/WebDriver/Keys