将键发送到页面而没有输入元素

时间:2013-05-10 03:42:45

标签: c# selenium selenium-webdriver webdriver

在运行keypress事件侦听器的网页上,我希望能够测试发送击键。但该页面没有输入元素,并调用

driver.FindElement(By.XPath("//body")).SendKeys("abc");

引发关于需要元素可编辑以接受击键的错误(针对Chrome)。

有没有办法生成击键,以便页面看到它们而不注入虚拟输入元素?

1 个答案:

答案 0 :(得分:18)

我没有对它进行过测试,但是你介意试试Actions.SendKeys吗?

示例在C#中:

// without an element
new Actions(driver).SendKeys("abc").Perform();

// send keys to body
new Actions(driver).SendKeys(driver.FindElement(By.XPath("//body")), "abc").Perform();