我正在运行一些自动化脚本,这些脚本将保存从服务器下载的文件,并将我的文件从downloads文件夹复制到用户特定文件夹, 保存后,“保存”按钮将变为颜色:红色(之前为蓝色)。有没有办法用selenium + Java测试它。? 我目前使用WebdriverBackedSelenium来开发我的脚本。
//Current Sample Code Snippet:
if(selenium.isElementPresent("css=Submit_Button"))
{
selenium.click("css=submit_Button");
}
//Expected Code Snippet:
if(selenium.isElementPresent("css=Submit_Button"))
{
if( /* something like colorof("css=Submit_Button")=="RED"*/ )
selenium.click("css=submit_Button");
else
System.out.print("\n Already Processed:");
}
答案 0 :(得分:0)
如果你是Java 7,那么你可以使用Files#copy直接将文件从源文件复制到目标文件!
如果您没有Java 7,可以从提供FileUtils#copyFile文件复制的Apache Commons
获取帮助!
答案 1 :(得分:0)
你可以试试这个:
File source = new File("H:\\work-temp\\file");
File desc = new File("H:\\work-temp\\file2");
try {
FileUtils.copyDirectory(source, desc);
} catch (IOException e) {
e.printStackTrace();
}
答案 2 :(得分:0)
http://commons.apache.org/proper/commons-io/apidocs/org/apache/commons/io/IOUtils.html
复制方法!
我认为你这样做可以使用其他方法。例如:python或shell!
答案 3 :(得分:0)
我明白你用硒?如果没有,那么忽略这个答案。
您也可以选择将浏览器首选项设置为最终要包含文件的文件夹。根据您使用selenium自动执行的浏览器,您必须稍微不同地设置首选项。对于Firefox,你可以
FirefoxProfile profile = new FirefoxProfile();
profile.setPreference("browser.download.dir", "c:\\YOUR\\PATH");
profile.setPreference("browser.download.folderList", 2);
profile.setPreference("browser.helperApps.neverAsk.saveToDisk",
"application/pdf,text/csv");
WebDriver driver = new FirefoxDriver(profile);
或者你使用powder-monkey和selenium这样的东西来获取你的下载...