GWTTestCase文件上载
我试图编写一些gwt测试用例,使用FileUpload和FormPanel上传文件 我的代码(未经测试)如下所示:GWTTestCase文件上载,gwt,file-upload,Gwt,File Upload,我试图编写一些gwt测试用例,使用FileUpload和FormPanel上传文件 我的代码(未经测试)如下所示: @测试 public void testImportXml(){ 延迟测试完成(10000); FormPanel fileForm=新的FormPanel(); setEncoding(FormPanel.ENCODING\u MULTIPART); fileForm.setMethod(FormPanel.METHOD\u POST); setAction(GWT.getMod
@测试
public void testImportXml(){
延迟测试完成(10000);
FormPanel fileForm=新的FormPanel();
setEncoding(FormPanel.ENCODING\u MULTIPART);
fileForm.setMethod(FormPanel.METHOD\u POST);
setAction(GWT.getModuleBaseURL()+“/xmlupload”);
URL myFile=this.getClass().getClassLoader().getResource(“myFile.xml”);
//FileUpload uploadField??
addSubmitHandler(新SubmitHandler(){
@凌驾
提交时公共无效(提交事件){
logger.info(“提交处理程序”);
}
});
fileForm.submit();
}
我找不到将FileUpload配置为使用“myFile”的方法。
我知道这样做是出于浏览器安全的原因,但在编写测试用例时,这是一个巨大的障碍
是否有一种方法可以为gwt中的测试用例指定文件上传文件名?否
但你可能会想知道你到底在测试什么
- 提交/提交完整处理程序?你最好直接在FormPanel上启动事件;您还可以重构代码以使用一些MV*模式,这样您实际测试的代码就不会绑定到GWT小部件,然后您可以使用普通的JUnit测试
- servlet?然后,不要使用GWTTestCase,使用HttpClient或任何类似的工具,对运行在服务器上的servlet发出请求(最好作为集成测试完成;查看一下以使其更易于设置)
- FormPanel+FileUpload和servlet之间的整个交互?然后不要使用GWTTestCase,使用Selenium驱动浏览器与正在运行的服务器对话(最好作为集成测试或验收测试完成)
HttpServletRequest
,HttpServletResponse
等。)但是,如果您想测试整个交互,Selenium就是您所需要/想要的,而且您还可以驱动真正的浏览器!(例如,有关完全自动化的信息,请参阅)