Selenium2 WebDriver C# API を使用して、マウスオーバーに応じて動作する JavaScript Web アプリをテストしています。コードを DRY に保つために Web 要素上でホバーを実行する拡張メソッドがあります。
public static void Hover(this IWebElement webElement, IWebDriver driver)
{
new Actions(driver).MoveToElement(webElement).Perform();
}
ここで、要素に関係なく、マウスの位置を自然なデフォルト値に「リセット」するメソッドが必要です。これを TearDown() で呼び出して、テスト後にドライバーを既知の状態に保ちます。私が思いつくことができる最高のものは
public static void ResetMouseCursor(IWebDriver driver)
{
new Actions(driver).MoveByOffset(-9999, -9999).Perform();
}
これは、ブラウザを無人地帯に置くだけです。これを行うより良い方法はありますか?