在Java中对App Engine图像上传进行单元测试

4

我正在按照App Engine Images API文档中所述进行图像上传,使用getServingUrl()生成上传url,然后将请求转发到我的自定义处理程序。我想知道是否有一种好的方法在处理程序中对图像处理逻辑进行单元测试。如果我在单元测试中实例化处理程序并将请求传递给它,它会失败并显示“必须从Blob上传回调请求中调用”。我能否通过某种方式模拟它?

1个回答

2
写一个模拟对象,从getServingUrl方法返回一个已知的值,然后确保您的类正确读取该值并使用它来进行上传请求。您必须假设GAE代码在这种情况下会做正确的事情。您应该关注的唯一逻辑是从GAE读取该URL,并随后使用您的Blob数据向其发帖。

我本来希望能尽可能地避免使用模拟对象,但我猜在这种情况下这是唯一的方法。谢谢! - Anvar
1
我个人不使用记录/倒带的“真正”模拟对象,实际上我倾向于使用Groovy对我的大多数Java代码进行单元测试,并使用闭包来模拟与Blobstore servlet等协作类的小功能块。 - Rick Mangi

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接