我正在寻找一种快速的方法来键入进入或返回键在硒。
不幸的是,我试图测试的表单(不是我自己的代码,所以我不能修改)没有Submit按钮。当手动使用它时,我只需输入Enter或Return。我怎么能做到这一点与硒类型命令,因为没有按钮点击?
我正在寻找一种快速的方法来键入进入或返回键在硒。
不幸的是,我试图测试的表单(不是我自己的代码,所以我不能修改)没有Submit按钮。当手动使用它时,我只需输入Enter或Return。我怎么能做到这一点与硒类型命令,因为没有按钮点击?
当前回答
你可以试试:
selenium.keyPress("id="", "\\13");
其他回答
我只是想指出,我的Cucumber测试需要这个,并发现如果您想模拟按enter/return键,则需要发送:return值,而不是:enter值(请参阅此处描述的值)。
您可以在输入文本的元素对象上调用submit()。
或者,你也可以将Enter键发送给它,如下面的Python代码片段所示:
from selenium.webdriver.common.keys import Keys
element.send_keys(Keys.ENTER) # 'element' is the WebElement object corresponding to the input field on the page
我必须在文本中间输入回车键。于是我通过下面的文本发送键函数来实现1\n2\n3:
1\N{U+E007}2\N{U+E007}3
object.sendKeys("your message", Keys.ENTER);
它的工作原理。
你可以使用任意一个键。回车或Keys.RETURN。以下是细节:
用法:
Java: Using Keys.ENTER: import org.openqa.selenium.Keys; driver.findElement(By.id("element_id")).sendKeys(Keys.ENTER); Using Keys.RETURN: import org.openqa.selenium.Keys; driver.findElement(By.id("element_id")).sendKeys(Keys.RETURN); Python: Using Keys.ENTER: from selenium.webdriver.common.keys import Keys driver.find_element_by_id("element_id").send_keys(Keys.ENTER) Using Keys.RETURN: from selenium.webdriver.common.keys import Keys driver.find_element_by_id("element_id").send_keys(Keys.RETURN)
钥匙。回车键。返回两个都来自org.openqa.selenium。Keys,它扩展了java.lang。Enum<Keys>并实现java.lang.CharSequence。
Enum关键字
枚举键是非文本的可按键的表示形式。它们存储在Unicode PUA(私有使用区域)代码点0xE000-0xF8FF中。
关键代码:
它们的特殊按键代码如下:
RETURN = u'\ue006' ENTER = u'\ue007'
所有枚举键的实现都以相同的方式处理。
因此,在使用sendKeys(Keys.ENTER)时,没有功能或操作上的差异;或WebElement.sendKeys (Keys.RETURN);通过硒。
输入键和返回键
在计算机键盘上,大多数情况下,回车键(或Mac OS X上的回车键)会导致命令行、窗口形式或对话框操作其默认功能。这通常是为了完成一个“条目”并开始所需的流程,通常是按下OK按钮的另一种选择。
Return通常也被称为Enter,它们通常执行相同的功能;然而,在某些特定的应用程序(主要是页面布局)中,Return的操作特别像它起源于回车键的回车键。相比之下,在一般的PC键盘上,Enter通常以纯文本的形式标注其名称。
参考文献
回车键 回车