Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/345.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java中单元测试应用程序引擎图像上传_Java_Unit Testing_Google App Engine - Fatal编程技术网

Java中单元测试应用程序引擎图像上传

Java中单元测试应用程序引擎图像上传,java,unit-testing,google-app-engine,Java,Unit Testing,Google App Engine,我正在按照App Engine Images API文档中的概述进行图像上载,使用getServingUrl()生成上载url,然后将请求转发给我自己的处理程序。我想知道在我的处理器中是否有一种很好的单元测试图像处理逻辑的方法。如果我在单元测试中实例化我的处理程序并将请求传递给它,它将失败,并发出“必须从blob上载回调请求调用”。我可以模拟它吗?编写一个模拟对象,从getServingUrl方法返回一个已知的值,然后确保您的类正确读取该值并使用它发出上载请求。在这种情况下,您必须假设GAE代码

我正在按照App Engine Images API文档中的概述进行图像上载,使用getServingUrl()生成上载url,然后将请求转发给我自己的处理程序。我想知道在我的处理器中是否有一种很好的单元测试图像处理逻辑的方法。如果我在单元测试中实例化我的处理程序并将请求传递给它,它将失败,并发出“必须从blob上载回调请求调用”。我可以模拟它吗?

编写一个模拟对象,从getServingUrl方法返回一个已知的值,然后确保您的类正确读取该值并使用它发出上载请求。在这种情况下,您必须假设GAE代码将做正确的事情。您应该关注的唯一逻辑是从GAE读取该url,然后用blob数据发布到该url。

我希望尽可能长时间避免使用模拟对象,但我想这是这种情况下的唯一方法。谢谢我个人不使用记录/回放的“真实”模拟对象,我实际上倾向于使用groovy对大部分java代码进行单元测试,并使用闭包模拟协作类(如blobstore servlet)的少量功能。