我有以下页面:
=========== 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
- 确认我可以看到字符串“正在生成结果...”
如果我使用 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 上使用 Selenium 的 2.33.0.0 版本)
我发现这些似乎相关的链接:
https://code.google.com/p/selenium/issues/detail?id=3611 https://code.google.com/p/selenium/issues/detail?id=2181
有谁知道为什么我在尝试使用 Selenium 模拟浏览器后退按钮时遇到上述问题?
如果是这样,我该如何修复它以便将 canBeSeen 设置为 true?
提前致谢。