次のページがあります。
=========== mytestpage1.htm ===========
<p>This is my test page 1</p>
<input id="mysearch" type="image" onclick="return searchClick();" src="../../Img/arrow_large_down.gif" />
<span id="generatingResults" style="font-weight:bold;DISPLAY: none">Generating results...</span>
<script>
function searchClick() {
document.getElementById("generatingResults").style.display = 'block';
location.href = 'mytestpage2.htm';
return false;
}
</script>
=========== mytestpage2.htm ===========
<p><b>This is my test page 2</b></p>
次のアクションを実行しています。
- 「mysearch ボタン」をクリックして mytestpage2.htm をロードする
- ブラウザの戻るボタンをクリックして、mytestpage1.htm に戻ります。
- 「Generating results...」という文字列が表示されることを確認します
Firefox 12.0 で手動でテストすると、文字列が表示されます。
ただし、Selenium を使用すると文字列が表示されません。Selenium の基本的なテスト手順は次のとおりです (ブラウザーは OpenQA.Selenium.Remote.RemoteWebDriver で、テストでは Firefox 12.0 を使用します)。
browser.FindElementById("mysearch").Click();
browser.Navigate().Back();
var canBeSeen = browser.FindElementById("generatingResults").GetCssValue("display") == "block";
canBeSeen は false に設定されています (.NET 4.0 でバージョン 2.33.0.0 の Selenium を使用しています)
関連すると思われるこれらのリンクを見つけました:
https://code.google.com/p/selenium/issues/detail?id=3611 https://code.google.com/p/selenium/issues/detail?id=2181
Seleniumを使用してブラウザの戻るボタンをシミュレートしようとすると、上記の問題が発生する理由を知っている人はいますか?
もしそうなら、canBeSeen が true に設定されるように修正するにはどうすればよいですか?
前もって感謝します。