我目前正在让 IE8、9 和 10 正确地使用 Selenium RC 实现自动化。问题是它似乎找不到任何类型的链接=无论如何。我在测试运行程序中收到错误“Element link=Live Dead Assay not found”。它在线上失败:
try { if (selenium.isElementPresent("link=Live Dead Assay"))
问题是我们测试的所有其他浏览器(Firefox、Chrome 和 Safari)都可以顺利运行。只有IE有问题。
下面是我们使用的脚本(这是通过从 Selenium IDE 导出创建的)。
只是为了让大家知道,我尝试在 selenium.isElementPresent 行前面放置暂停,但这是行不通的。我还尝试将测试运行器降低到最慢的速度,但同样没有成功。
任何帮助,将不胜感激。谢谢
克里斯
@Test
public void clickLink() throws Exception {
// Open nav and expand Screens
for (int second = 0;; second++) {
if (second >= 60) fail("timeout");
try { if (selenium.isElementPresent("css=#browse_screens_folder_52 > ins.jstree-icon")) break; } catch (Exception e) {}
Thread.sleep(1000);
}
selenium.click("css=#browse_screens_folder_52 > ins.jstree-icon");
// Open small image (Live Dead Assay)
for (int second = 0;; second++) {
if (second >= 60) fail("timeout");
try { if (selenium.isElementPresent("css=#browse_screen_568 > ins.jstree-icon")) break; } catch (Exception e) {}
Thread.sleep(1000);
}
selenium.click("css=#browse_screen_568 > ins.jstree-icon");
// 35669 Check info table present
for (int second = 0;; second++) {
if (second >= 60) fail("timeout");
try { if (selenium.isElementPresent("link=Live Dead Assay")) break; } catch (Exception e) {}
Thread.sleep(1000);
}
selenium.click("link=Live Dead Assay");
}
30/1/13 我应该补充一点,我们还通过 Jenkins 运行了一个 html 脚本,这也同时失败了。我们为此设置了 *iexplore。
然而,就在今天,在一位同事的本地机器上,我们从命令行运行了 htmlsuite Selenium Standalone Server。在这种情况下,我们使用了 *piiexplore,测试实际上找到了其他设置失败的元素。从那以后,我在我们的 Jenkins 工作中尝试了 *piiexplore,但这并没有奏效,并且和以前一样失败了。这可能是本地机器设置吗?或者通过 Jenkins 运行测试的问题?