【发布时间】:2014-02-06 19:00:25
【问题描述】:
我正在使用 selenium 测试自动化并卡在这里 当我单击一个按钮时,将打开一个新的弹出窗口(就像 OpenFileDialog 一样)以从计算机中选择文件。我想为此步骤编写一个测试用例。请帮忙!!!
【问题讨论】:
-
HERE提供了关于这个主题的一个很好的解释
我正在使用 selenium 测试自动化并卡在这里 当我单击一个按钮时,将打开一个新的弹出窗口(就像 OpenFileDialog 一样)以从计算机中选择文件。我想为此步骤编写一个测试用例。请帮忙!!!
【问题讨论】:
有两种处理方式,
直接将文件传递为,
driver.findElement(By.id("elementId")).sendKeys("C:\path\to\your\file");
通过使用机器人框架click here。
希望这会对你有所帮助。
【讨论】:
使用此方法处理文件:
我们需要:
jacob.jar Download
它将包含一个 jar 文件和 2 个 .dll 文件
AutoItX4Java.jar Download
public static void uploadFile(String path, String browser){
if(browser.equalsIgnoreCase("chrome")){
if(x.winWaitActive("Open", "", 10)){
if(x.winExists("Open")){
x.sleep(500);
x.send(path);
x.controlClick("Open", "", "Button2");
}
}
}
if(browser.equalsIgnoreCase("firefox")){
if(x.winWaitActive("File Upload", "", 10)){
if(x.winExists("File Upload")){
x.sleep(500);
x.send(path);
x.controlClick("File Upload", "", "Button2");
}
}
}
if(browser.equalsIgnoreCase("InternetExplorer")){
if(x.winWaitActive("Choose File to Upload", "", 10)){
if(x.winExists("Choose File to Upload")){
x.sleep(500);
x.send(path);
x.controlClick("Choose File to Upload", "", "Button2");
}
}
}
}
public void test(){
//Click on the Select button of the file upload
uploadFile("Path", "chrome");
}
谢谢...在对您有用之前,请勿单击接受或支持。如果它不适合您的意思,请发表评论.. 不要投反对票...
【讨论】: