我在寻找一种快速类型并输入或硒返回键。 不幸的是,我试图测试(不是我自己的代码,所以我不能修改)的形式没有一个提交按钮。 当它手动的工作,我只需键入回车键或Return。 我需要知道如何做,与硒type
的命令,因为没有按钮点击。
Answer 1:
import org.openqa.selenium.Keys
WebElement.sendKeys(Keys.RETURN);
在import
语句是Java的,其他语言也可能是不同的,例如蟒蛇: from selenium.webdriver.common.keys import Keys
Answer 2:
JAVA
driver.findElement(By.id("Value")).sendKeys(Keys.RETURN);
要么,
driver.findElement(By.id("Value")).sendKeys(Keys.ENTER);
蟒蛇
from selenium.webdriver.common.keys import Keys
driver.find_element_by_name("Value").send_keys(Keys.RETURN)
要么,
driver.find_element_by_name("Value").send_keys(Keys.ENTER)
要么,
element = driver.find_element_by_id("Value")
element.send_keys("keysToSend")
element.submit()
红宝石
element = @driver.find_element(:name, "value")
element.send_keys "keysToSend"
element.submit
要么,
element = @driver.find_element(:name, "value")
element.send_keys "keysToSend"
element.send_keys:return
要么,
@driver.action.send_keys(:enter).perform
@driver.action.send_keys(:return).perform
C#
driver.FindElement(By.Id("Value")).SendKeys(Keys.Return);
要么,
driver.FindElement(By.Id("Value")).SendKeys(Keys.Enter);
Answer 3:
现在,硒2已经发布,这是一个有点容易发送回车键,因为你可以用做send_keys
的方法selenium.webdriver.remote.webelement.WebElement
类(本例中的代码是Python,但相同方法在Java中存在):
>>> from selenium import webdriver
>>> wd = webdriver.Firefox()
>>> wd.get("http://localhost/example/page")
>>> textbox = wd.find_element_by_css_selector("input")
>>> textbox.send_keys("Hello World\n")
Answer 4:
您可以使用的Keys.ENTER
或Keys.RETURN
。 这里还有一些细节:
使用方法:
Java的 :
使用
Keys.ENTER
:import org.openqa.selenium.Keys; driver.findElement(By.id("element_id")).sendKeys(Keys.ENTER);
使用
Keys.RETURN
import org.openqa.selenium.Keys; driver.findElement(By.id("element_id")).sendKeys(Keys.RETURN);
蟒蛇:
使用
Keys.ENTER
:from selenium.webdriver.common.keys import Keys driver.find_element_by_id("element_id").send_keys(Keys.ENTER)
使用
Keys.RETURN
from selenium.webdriver.common.keys import Keys driver.find_element_by_id("element_id").send_keys(Keys.RETURN)
Keys.ENTER
和Keys.RETURN
两者都是从org.openqa.selenium.Keys
,其延伸java.lang.Enum<Keys>
并实现java.lang.CharSequence
枚举密钥
枚举密钥是不是文本可按压按键的表示。 这些都存储在Unicode的PUA( 专用区 )代码点,0xE000-0xF8FF。
密钥代码:
特殊的keys codes
是它们如下:
- 收益率 =
u'\ue006'
- ENTER =
u'\ue007'
所有的实现Enum Keys
是相同的方式处理。
因此,这些是无 Functional
或Operational
差与任一工作时sendKeys(Keys.ENTER);
或WebElement.sendKeys(Keys.RETURN);
通过硒 。
回车键和返回键
在电脑键盘上, 回车 (或在Mac OSX上的返回 )在大多数情况下会导致命令行窗口的形式,或对话框来操作它的默认功能。 这通常是完成一个“入口”,并开始所需的工艺,并且通常是在按下OK按钮的替代品。
返回的是经常也被称为输入和他们通常执行相同的功能; 然而,在一些特定的应用程序(主要是页面布局) 返回工作特别喜欢从它起源回车键。 相比之下, 输入通常与它的名字在普通PC键盘纯文本标记。
参考
- 回车键
- 回车
Answer 5:
当写HTML测试,ENTER键可作为${KEY_ENTER}
。
你可以使用它sendKeys
,这里是一个例子:
sendKeys | id=search | ${KEY_ENTER}
Answer 6:
selenium.keyPress("css=input.tagit-input.ui-autocomplete-input", "13");
Answer 7:
你只是这样做:
final private WebElement input = driver.findElement(By.id("myId"));
input.clear();
input.sendKeys(value); // the value we want to set to input
input.sendKeys(Keys.RETURN);
Answer 8:
对于谁是使用WebDriverJS那些人Keys.RETURN
将作为被引用
webdriver.Key.RETURN
一个更完整的例子作为参考可能也有帮助:
var pressEnterToSend = function () {
var deferred = webdriver.promise.defer();
webdriver.findElement(webdriver.By.id('id-of-input-element')).then(function (element) {
element.sendKeys(webdriver.Key.RETURN);
deferred.resolve();
});
return deferred.promise;
};
Answer 9:
driver.findElement(By.id("Value")).sendKeys(Keys.RETURN);
或driver.findElement(By.id("Value")).sendKeys(Keys.ENTER);
Answer 10:
search = browser.find_element_by_xpath("//*[@type='text']")
search.send_keys(u'\ue007')
ENTER = U '\ ue007'
参考硒文档“特殊键”
Answer 11:
我只是想指出,我需要为我的黄瓜测试,结果发现,如果你想模拟按下回车/返回键,你需要发送的:return
值,而不是 :enter
值(见描述的值这里 )
Answer 12:
硒RC与Java:
selenium.keyPress("elementID", "\13");
硒的webdriver(又名Selenium2)用java:
driver.findElement(By.id("elementID")).sendKeys(Keys.ENTER);
要么,
driver.findElement(By.id("elementID")).sendKeys(Keys.RETURN);
另一种方法是按使用动作类的webdriver输入:
Actions action = new Actions(driver);
action.sendKeys(driver.findElement(By.id("elementID")), Keys.ENTER).build().perform();
Answer 13:
如果你正在寻找“如何按回车键从键盘中硒的webdriver(JAVA)键”,然后在下面的代码一定会帮助你。
//assign key board object
Keyboard keyboard=((HasInputDevices) driver).getKeyboard();
//enter a key
keyboard.pressKey(Keys.ENTER);
Answer 14:
有按键下列方式 - C#:
Driver.FindElement(By.Id("Value")).SendKeys(Keys.Return);
要么
OpenQA.Selenium.Interactions.Actions action = new OpenQA.Selenium.Interactions.Actions(Driver);
action.SendKeys(OpenQA.Selenium.Keys.Escape);
要么
IWebElement body = GlobalDriver.FindElement(By.TagName("body"));
body.SendKeys(Keys.Escape);
Answer 15:
要输入使用硒键首先,你需要导入库如下:
"import org.openqa.selenium.Keys"
然后添加以下代码要回车键
"WebElement.sendKeys(Keys.RETURN);"
您可以根据您的要求更换列表中的任何键RETURN
Answer 16:
可以使用Action接口以及,在webdriver的情况下可以实现 -
WebElement username = driver.findElement(By.name("q"));
username.sendKeys(searchKey);
Actions action = new Actions(driver);
action.sendKeys(Keys.RETURN);
action.perform();
Answer 17:
尝试使用XPATH搜索元素,然后将下面的代码工作:
driver.findElement(By.xpath(".//*[@id='txtFilterContentUnit']")).sendKeys(Keys.ENTER);
Answer 18:
红宝石: -
driver.find_element(:id,"XYZ").send_keys:return
Answer 19:
你可以试试 :
selenium.keyPress("id="","\\13");
Answer 20:
我只好发在文本中间确认键。 因此,我通过了以下文字发送键的功能,以实现1\n2\n3
1\N{U+E007}2\N{U+E007}3
Answer 21:
硒的webdriver使用XPath(如果该键是可见的):
driver.findElement(By.xpath("xpath of text field")).sendKeys(Keys.ENTER);
要么,
driver.findElement(By.xpath("xpath of text field")).sendKeys(Keys.RETURN);
Answer 22:
如果你在这个具体情况:
A)想只要按下按键,但没有一个具体的webElement点击
b)您使用硒2(的webdriver)
那么解决的办法是:
Actions builder = new Actions(webDriverInstance);
builder.sendKeys(Keys.RETURN).perform();
Answer 23:
JAVA / JavaScript的:
你也许可以做到这样也, 非本地 :
public void triggerButtonOnEnterKeyInTextField(String textFieldId, String clickableButId)
{
((JavascriptExecutor) driver).executeScript("
elementId = arguments[0];
buttonId = arguments[1];
document.getElementById(elementId)
.addEventListener("keyup", function(event) {
event.preventDefault();
if (event.keyCode == 13) {
document.getElementById(buttonId).click();
}
});", textFieldId, clickableButId);
}
Answer 24:
object.sendKeys("your message",Keys.ENTER);
有用
Answer 25:
当你不希望搜索任何定位器,你可以使用机器人类:如:
Robot robot = new Robot();
robot.keyPress(KeyEvent.VK_ENTER);
robot.keyRelease(KeyEvent.VK_ENTER);
Answer 26:
Actions action = new Actions(driver);
action.sendKeys(Keys.RETURN);
Answer 27:
在Python--步骤1.从selenium.webdriver.common导入密钥。步骤2 driver.find_element_by_name( “”)。send_keys(keys.Keys.ENTER)
注意 - 您必须编写keys.keys.ENTER
Answer 28:
你可以调用submit()
中,您在输入文本的元素对象。
另外,您也可以专门发送回车键就如本蟒蛇片段:
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
Answer 29:
对于使用JavaScript /节点大家,这个工作对我来说:
driver.findElement(By.xpath('xpath')).sendKeys('ENTER');