Selenium RC - 找不到元素链接(仅限Internet Explorer)

时间:2013-01-29 14:16:15

标签: internet-explorer automated-tests element selenium-rc

我目前正在做一些噩梦,让IE8,9和10正确地使用Selenium RC进行自动化。问题是它似乎找不到任何类型的链接=什么。我在testrunner中收到错误'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运行测试的问题?

1 个答案:

答案 0 :(得分:0)

使用xpath而不是link = blah解决。 IE喜欢这个: - )