除非我将鼠标移动到该元素,否则selenium无法找到元素

时间:2012-12-09 11:44:05

标签: selenium selenium-rc

我正在使用Selenium RC自动化某些第三方网站,并面临上传文件按钮的一些问题。

按钮出现在页面上,但Selenium无法找到并单击该元素。我试图等待该元素出现在页面上,所以在解决了这个问题后,我发现Selenium会在我等待该元素的同时手动将鼠标移到该按钮上时找到该元素。

这是我的代码段。

public void testBox() throws Exception{
    selenium.setTimeout("10000000000");
    selenium.open("/files");
    selenium.click("id=login_button_credentials");
    selenium.waitForPageToLoad("150000");
    while(!selenium.isElementPresent("id=upload_split_arrow")) {
        Thread.sleep(10);
    }

    selenium.click("id=upload_split_arrow");
    while(!selenium.isElementPresent("id=upload_file1")) {
        Thread.sleep(10);
    }

    selenium.click("id=upload_file1");
    Thread.sleep(10000000);
}

有人可以建议一些解决方法吗?

1 个答案:

答案 0 :(得分:0)

在使用“click”命令之前使用“focus”。 它可以达到目的。

    selenium.focus("id=upload_file1");
    selenium.click("id=upload_file1");