2013-05-08 46 views
-5

我正在运行一些自动化脚本,它将保存从服务器下载的文件,并将我的文件从下载文件夹复制到用户特定的文件夹,并在保存后将“SAVE”按钮变为彩色:RED(以前为蓝色) 。有没有一种方法可以使用selenium + Java来测试它。 我目前使用WebdriverBackedSelenium来开发我的脚本。如何使用硒中的css定位器来识别定位器的颜色(按钮/标签)?

//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

如果你已经Java 7的,那么你可以使用Files#copy直接将文件从源复制到目标!

如果您还没有Java 7,您可以从Apache Commons获取帮助,该文件提供了用于文件复制的FileUtils#copyFile

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(); 
} 
0

我明白你用硒?如果不是,则忽略此答案。

无论如何,您可以选择将浏览器首选项设置为您最终拥有文件的文件夹。根据您使用硒自动执行的浏览器,您必须以不同的方式设置首选项。对于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硒,让您下载...