我能夠執行鼠標移動,使用Selenium的mouseMove函數觸發菜單,但是我的瀏覽器自動化的大部分內容都是Watin。在Watin中有沒有合適的替代方案?用於Watin的mouseMove
我已經試過
div.FireEvent("onMouseMove");
div.MouseEnter();
沒有運氣。我的目標是相同的div類。用於Selenium的mouseMove作品,Watin的onmouseMove不。
我能夠執行鼠標移動,使用Selenium的mouseMove函數觸發菜單,但是我的瀏覽器自動化的大部分內容都是Watin。在Watin中有沒有合適的替代方案?用於Watin的mouseMove
我已經試過
div.FireEvent("onMouseMove");
div.MouseEnter();
沒有運氣。我的目標是相同的div類。用於Selenium的mouseMove作品,Watin的onmouseMove不。
使用一些胡思亂想的表單驗證,我不得不直接調用javascript change()方法來獲取表單驗證,因爲Watin的元素click()沒有這樣做。
調用change()看起來像這樣。
var jqElement = string.Format("window.jQuery({0})", GetJavascriptElementReference());
DomContainer.Eval(string.Format("{0}.change()", jqElement));
顯然,你需要在你的形式來改變window.jQuery ......部分點,改改()方法,你需要調用合適的鼠標懸停方法。
由於在您的測試代碼中調用特定的javascript方法,因此這裏的缺點是脆弱性。
直接調用的JavaScript的另一個例子可以看出,在這裏我的答案:Autocomplete DropDown Menu Testing using WatiN
jQuery({0})代表什麼?我能否通過課堂或其他屬性來識別我的元素? – atwellpub 2011-12-30 22:25:28
給移動鼠標一試...
div.FireEvent("mouseenter");
div.FireEvent("mousemove");
如果我忽略'開',它會在故障排除日誌中引發錯誤。 「無效的論點。」 – atwellpub 2011-12-31 22:55:19
你有沒有發現你的答案? – Gabber 2012-03-21 10:22:45
還沒有。我已經推遲了這個麻煩的項目並轉移到其他方面。我會回來的。 – atwellpub 2012-03-21 17:16:08