我正在使用Selenium web驱动程序来处理文件浏览窗口。在尝试了不同的事情后,我找到了一个解决方案,我正在使用AutoIt。
脚本
@Test
public void test() throws InterruptedException, IOException
{
driver.manage().window().maximize();
Thread.sleep(1500);
driver.findElement(By.xpath("//div[@id='input-file-wrapper']")).click();
Thread.sleep(1000);
Process proc =Runtime.getRuntime().exec("D:\\Upload.exe");
driver.findElement(By.xpath("//div[@id='go-btn']")).click();
//driver.findElement(By.name("File name")).sendKeys("D:\\[Limetorrents.cc]_Daawat e Ishq (2014) DvDScr x264 [DTRC] .torrent");
driver.findElement(By.xpath("//div[@id='cloud-free-btn']")).click();
/*
WebDriverWait wait=new WebDriverWait(driver,50);
wait.until(ExpectedConditions.visibilityOfElementLocated(By.xpath("//div[@class='vlc- playlist']")));
*/
Thread.sleep(1000);
// String i= driver.findElement(By.xpath("//div[@class='seed-number']")).getText();
boolean i1=driver.findElement(By.xpath("//div[@class='vlc-playlist']")).isDisplayed();
System.out.println(i1);
do
{
driver.manage().timeouts().implicitlyWait(10, TimeUnit.SECONDS);
i1=driver.findElement(By.xpath("//div[@class='vlc-playlist']")).isDisplayed();
}
while(i1!=true);
Thread.sleep(1000);
driver.findElement(By.xpath("//img[@alt='trash']")).click();
driver.findElement(By.xpath("//div[@class='confirm-to-remove']")).click();
}
AutoIt的脚本如下所示,它生成了Upload.exe文件,并且我已经在路径名中给出了
WinWaitActive("File Upload")
Send("[kickass.to]desi.kattey.2014.1cd.dvdscr.rip.hindi.xvid.mp3.mafiaking.teamtnt.exclusive.torrent")
Send("{ENTER}")
这里每次运行时只需要一个文件。如何拍摄不同的文件。
答案 0 :(得分:0)
AutoIt脚本可以从命令行传递参数。因此,当您使用Runtime.exec("process")
执行自动脚本时,在该时间点将文件名作为参数传递并接受脚本中的命令行参数。如果这有帮助,请告诉我。