如果你不能得到Actions
工作,你可以擺脫困境,並調用JavaScript(或jQuery的,因爲在我的例子這裏),調用Ctrl-Click。
示例HTML片段(你試圖自動化的測試)...
<script type='text/javascript'>
function myClick(e) {if(e.ctrlKey) {alert('ctrl+click');}}
</script>
...
<img id='myElement' onclick='myClick();' src='abc.gif' />
實例C#電話:
public void ExecuteJs(string javascript)
{
var js = Browser.WebDriver as IJavaScriptExecutor;
if (js != null) js.ExecuteScript(javascript);
}
public void CtrlClickElement(string elementId)
{
var script = string.Format("var e=jQuery.Event('click');e.ctrlKey=true;$('#{0}').trigger(e);", elementId);
ExecuteJs(script);
}
...
CtrlClickElement("myElement");
參考:
當我使用
的KeyDown它是不是工作壓力太大 – user2080814 2013-03-07 14:23:30
你能做到按Ctrl + Enter鍵? (輸入以模擬點擊) – StaleElementException 2013-03-07 15:20:11
我認爲Ctrl + Space是用於多選 – kernowcode 2014-10-07 07:55:43