我想测试我的上传例程。但没有任何作用。有没有办法在Java中测试上传MultipartFormData上传?
我的方法: 第一个,但不起作用... withFormURLEncodedBody只接受一个地图。
// generate fake cookie
Cookie fakeCookie = Utils.fakeCookie(userInfo.getName());
// create a fake request
FakeRequest fakeRequest = new FakeRequest("POST", "/restricted/upload");
// create an Hashmap for data
Map<String, Object> data = new HashMap<String, Object>();
File file = new File(
RootPathConstant.TEST_FILES_PATH.concat(File.separator
.concat("test.nt")));
data.put("file", file);
// call an action with some parameters and receive results
Result result = Helpers.callAction(controllers.routes.ref.UserOptions
.uploadDataset(),fakeRequest.withFormUrlEncodedBody(data)
.withCookies(fakeCookie));
我的第二种方法是这样的:
Test MultipartFormData in Play 2.0 FakeRequest 但是在帖子执行后它不会启动任何保存操作。可以访问该站点,但似乎没有调用post controlleraction
有人有想法解决这个问题吗?
答案 0 :(得分:0)
我尝试了一些方法后解决了这个问题。
解决方案:
因为我正在使用securesocial 2插件,所以我在java中编写了一个登录例程,然后获取了必要的cookie,将它们添加到localcontext,然后使用该localcontext执行另一个请求将文件发送到服务器。
这对我有用。