我正在寻找一种快速的方法来键入进入或返回键在硒。
不幸的是,我试图测试的表单(不是我自己的代码,所以我不能修改)没有Submit按钮。当手动使用它时,我只需输入Enter或Return。我怎么能做到这一点与硒类型命令,因为没有按钮点击?
我正在寻找一种快速的方法来键入进入或返回键在硒。
不幸的是,我试图测试的表单(不是我自己的代码,所以我不能修改)没有Submit按钮。当手动使用它时,我只需输入Enter或Return。我怎么能做到这一点与硒类型命令,因为没有按钮点击?
当前回答
尝试使用XPath表达式搜索元素,然后,以下代码工作:
driver.findElement(By.xpath(".//*[@id='txtFilterContentUnit']")).sendKeys(Keys.ENTER);
其他回答
selenium.keyPress("css=input.tagit-input.ui-autocomplete-input", "13");
现在Selenium 2已经发布了,发送一个Enter键会更容易一些,因为你可以使用Selenium .webdriver.remote.webelement. webelement类的send_keys方法(这个示例代码在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")
当您不想搜索任何定位器时,您可以使用Robot类。例如,
Robot robot = new Robot();
robot.keyPress(KeyEvent.VK_ENTER);
robot.keyRelease(KeyEvent.VK_ENTER);
有以下几种按键方式- c#:
Driver.FindElement(By.Id("Value")).SendKeys(Keys.Return);
OR
OpenQA.Selenium.Interactions.Actions action = new OpenQA.Selenium.Interactions.Actions(Driver);
action.SendKeys(OpenQA.Selenium.Keys.Escape);
OR
IWebElement body = GlobalDriver.FindElement(By.TagName("body"));
body.SendKeys(Keys.Escape);
driver.findElement (By.id(“价值”).sendKeys (Keys.RETURN);或driver.findElement (By.id(“价值”).sendKeys (Keys.ENTER);