我设法让下面的代码片段在开发服务器中成功运行,将图像重新调整为300x300像素作为Web请求的一部分。Google App Engine的ImagesServiceFactory.getImagesService()可用于单元测试吗?
但是,我似乎无法在单元测试中运行它们。
byte[] data = loadMyData();
OutputSettings format = new OutputSettings(ImagesService.OutputEncoding.JPEG);
Image resized = getImagesService().applyTransform(makeResize(300, 300, 0, 0), data, format);
上面的代码在单元测试中抛出这个异常:
java.lang.IllegalArgumentException: Failed to read image
at com.google.appengine.api.images.ImagesServiceImpl.convertApplicationException(ImagesServiceImpl.java:333)
at com.google.appengine.api.images.ImagesServiceImpl.applyTransform(ImagesServiceImpl.java:86)
at com.google.appengine.api.images.ImagesServiceImpl.applyTransform(ImagesServiceImpl.java:63)
添加“LocalImagesServiceTestConfig”到LocalServiceTestHelper没有任何区别。
希望有人可以确认我们是否可以实际使用getImagesService()来调整(Java)单元测试中的图像大小。
我的本意是通过一个单独的任务上传调整后的图像到Amazon S3。想法是将调整大小的字节存储在blobstore中作为temp。 – kctang 2012-01-02 01:39:07