2011-08-05 32 views
1

我可以在不使用定位器的情況下在Java中的Selenium中發送KeyStroke?如何在Selenium中將KeyStroke發送到瀏覽器窗口(無定位器)

我想發送KeyStroke到WebBrowser本身,因爲我不知道元素(及其定位器),我必須向其發送KeyStroke來執行操作,這是我想要的。但是我知道,當我手動選擇瀏覽器作爲活動窗口,只需按下鍵盤上的「Enter」而不選擇頁面上的任何元素,就可以正確執行該操作。

我想這個代碼

SeleniumSession.keyPressNative(Integer.toString(KeyEvent.VK_ENTER)); 

但它並沒有爲我工作。

回答

1

將它發送到HTML元素怎麼樣 - 即通過xpath "/html"和sendKeys()查找元素?

+0

嘗試這個只是關閉硒會話與錯誤「元素未找到」。但我試過SeleniumSession.keyPress(「//」,「\\ 113」);它什麼都沒做 – ShockwaveNN

+0

「//」是所有元素的定位器,因此您將按鍵發送到頁面的第一個元素,無論是(可能爲)。不太可能工作。 –

0

我想嘗試「// body」,但我不確定它會在Selenium RC API中工作。這是Selenium 2.x的WebDriver API旨在使工作良好的一件事。

相關問題