2017-04-26 44 views
0

我有一些測試,我運行使用硒。我爲我需要的快捷鍵發送密鑰wordSession.Keyboard.SendKeys(Keys.Alt + Keys.F4)。這適用於關閉應用程序。但是它保持這些鍵不變。我試着給它發送一個ReleaseKeys但是,函數不會釋放我要告訴它的鍵。有沒有另一種方式做這個或我錯過了什麼?釋放鍵硒

我的代碼如下

  wordSession.Keyboard.SendKeys(Keys.Alt + Keys.F4) 
      wordSession.Keyboard.ReleaseKey(Keys.Alt); 
      wordSession.FindElementByName("Don't Save").Click(); 
+0

嘗試使用操作,它具有KeyDown和KEYUP功能應該滿足您的需求https://seleniumhq.github.io/selenium/docs/api/dotnet/html/T_OpenQA_Selenium_Interactions_Actions.htm –

回答

1

嘗試這種情況:

操作動作=新操作(wordSession); (Key.Alt + Keys.F4).Build()。Perform();)。

看起來像Alt,Shift和Ctrl正在切換鍵。嘗試發送KeyDown和KeyUp。

action.keyDown(Keys.Alt).sendKeys(Keys.F4).keyUp(Keys.Alt).B‌​uild().perform();

+0

由於得到了越來越回到我的身邊。然而這個解決方案並沒有爲我工作。任何其他想法? –

+0

看起來像Alt,Shift和Ctrl正在切換鍵。試試這個:action.keyDown(Keys.Alt).sendKeys(Keys.F4).keyUp(Keys.Alt).Build()。perform(); – vendettamit

+0

這似乎工作。你可以設置這個問題作爲答案,我會標記爲正確的。謝謝:) –