配置Selenium 2(WebDriver),使用IE和WebDriver上传文件

时间:2012-10-25 09:07:47

标签: java internet-explorer file-upload selenium selenium-webdriver

如何配置Selenium WebDriver?我使用Selenium和Java自动化测试用例。现在我需要使用WebDriver自动上传和下载文件。我添加了webdriver-common-0.9.7376.jar。我喜欢使用Internet Explorer。我怎么能这样做?

我只是声明变量并使用驱动程序

private static WebDriver driver;
driver.findElement(By.id(upload)).sendKeys("file to be upload");

这是对的吗?

4 个答案:

答案 0 :(得分:1)

QUES。 1:如何配置WebDriver?

Ans:有两种方法:1)仅添加“selenium-server-standalone-2.29.0.jar”

OR, 2)添加“selenium-java-2.29.0.jar”和位于“selenium-java-2.29.0 \ selenium-2.29.0 \ libs”文件夹中的所有jar

您可以分别从http://code.google.com/p/selenium/downloads/detail?name=selenium-server-2.29.0.ziphttp://code.google.com/p/selenium/downloads/detail?name=selenium-java-2.29.0.zip下载“selenium-server-2.29.0.zip”和“selenium-java-2.29.0.zip”。 提取它们,你可以得到相应的jar文件来添加。

QUES。 2:如何实例化IE以及如何上传文件?

Ans:java代码如下:

File file = new File("C:\\Program Files\\Internet Explorer\\iexplore.exe");
System.setProperty("webdriver.ie.driver", file.getAbsolutePath());
WebDriver driver = new InternetExplorerDriver();
driver.findElement(By.id("upload")).sendKeys("file to be upload");

如果“文件文件=新文件(”C:\ Program Files \ Internet Explorer \ iexplore.exe“);”无效工作下载“IEDriverServer”并用以下内容替换该行:

File file = new File("E:\\Ripon\\IEDriverServer_Win32_2.29.1\\IEDriverServer.exe");

[注意:您可以从http://code.google.com/p/selenium/downloads/list]

下载“IEDriverServer”

答案 1 :(得分:1)

你需要在下载selenium-java 2.25 0r之后添加所有jar。首先添加所有jar然后添加所有lib文件夹jar。

  • 硒 - java的2.25.0.jar
  • selenium-java-2.25.0-srcs.jar然后所有lib jar(别忘了添加所有lib文件夹jar)

答案 2 :(得分:0)

如果没有浏览器的实例化驱动程序,则不会打开浏览器窗口来执行上传/下载操作。如果您使用IE,则需要编写driver = new InternetExplorerDriver();

答案 3 :(得分:0)

您可能需要http://code.google.com/p/selenium/downloads/list中最新的webdriver-common,而不是旧的selenium-java包。

如果您还需要在本地运行Selenium RC,或者远程WebDriver或Selenium Grid,那么您需要selenium-server包(如果您还不知道它们是什么,请执行{{ 1}})。

在这两种情况下,要运行selenium-java,您还需要上述页面中的InternetExplorerDriver。是否使用32位或64位版本取决于您。


您可以找到设置here in the documentation的示例。如果你稍微挖掘一下,你会在该文档中找到更多有用的信息。

例如,对于Internet Explorer,您将执行以下操作:

IEDriverServer

您上传文件的方法是正确的。

截至目前(Selenium v​​2.29.0),您无法通过任何WebDriver下载文件。如果你真的想这样做,你必须find another way