是否可以在欲望位置下载selenium网格中的excel或CSV报告文件?

时间:2017-01-30 05:49:50

标签: java selenium selenium-grid

我正在尝试在excel下载CSVSelenium Grid报告文件,但无法在所需位置查看下载的文件。

FirefoxProfile profile = new FirefoxProfile(); 
profile.setPreference("browser.download.folderList", 2);
profile.setPreference("browser.download.manager.showWhenStarting",false);
String path=System.getProperty("user.dir");
System.out.println(path);
profile.setPreference("browser.download.dir",path);
profile.setPreference("browser.helperApps.neverAsk.saveToDisk","application/msword,application/x-rar-compressed," + "application/octet-stream,application/csv,text/csv");
DesiredCapabilities cap = DesiredCapabilities.firefox();
cap.setCapability(FirefoxDriver.PROFILE, profile);
cap.setBrowserName("firefox");
cap.setPlatform(Platform.WINDOWS);
WebDriver driver = new RemoteWebDriver(new URL("GRID_URL"),cap);
    //WebDriver driver= new FirefoxDriver(profile);                          
driver.get("http://www.winzip.com/landing/open-rar-file.html");
driver.findElement(By.xpath("//*[@id='lan_img']")).click();
System.out.println("File downloaded at location::"+path);

1 个答案:

答案 0 :(得分:0)

文件正在Grid Hub将您的测试路由到的节点机器上下载而不是本地机器[当从不同的机器触发测试并且节点在不同的机器上运行时,这变得很复杂]

理想情况下,您不应该自动执行涉及文件下载的测试。 如果它绝对必须,那么我建议您从网络会话中提取出cookie,然后依靠http客户端以编程方式下载文件(其中不涉及硒)。

我建议您查看Mark Collins撰写的this深度博客文章,其中详细讨论了硒和文件下载,利弊以及可以使用的替代方案。

他在博客中谈到的一些助手也可以在github上找到。