Web アプリケーションをテストするために、セレンを使用して C# で単体テスト用にこのコードを作成しました。特に、ツールチップのウィンドウが適切に表示され、esc キーを押すとウィンドウが消えることをテストしています。
private const string XPathToolTipStyle = "//form[@action='search.aspx'] //div[@id='searchToolTip']/@style";
private bool IsToolTipOpen()
{
var tempToolTip = selenium.GetAttribute(XPathToolTipStyle);
return !(tempToolTip).ToLower().Contains("display: none;");
}
[Test]
public void PressEscAndCloseClosingKeys()
{
writeSomethingInTheInputBox();
Assert.That(IsToolTipOpen());
selenium.KeyPressNative("27"); //press esc
Assert.That(!IsToolTipOpen());
}
問題は、Internet Explorer では正しく動作することですが、Firefox では IsToolTipOpen() で無限ループに入り、終了して値を返すことはありません。keyDown、KeyPress などを使用しようとしましたが、うまくいきません。ありがとうございました。