Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/313.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 MockMVC-如何在没有MockMVC进行实际post的情况下测试到端点的post?_Java_Junit_Mockmvc - Fatal编程技术网

Java MockMVC-如何在没有MockMVC进行实际post的情况下测试到端点的post?

Java MockMVC-如何在没有MockMVC进行实际post的情况下测试到端点的post?,java,junit,mockmvc,Java,Junit,Mockmvc,我想测试一个REST端点。通过POST请求点击该端点将在远程git repo中上载文件。我正在尝试使用mockMvc测试对该端点的POST调用(我只希望看到返回状态“isOk()”)——我不希望我的jUnits实际命中该端点,因为这将导致不必要的文件上载到repo,并且需要稍后清理 我的问题是,mockMvc正在对端点进行实际的POST调用!啊!我以为这都是在嘲笑?!是否可以让mockMvc返回isOk(),而无需实际调用端点并将文件推送到我的远程repo?Mock MVC只是一个工具,它可以调

我想测试一个REST端点。通过POST请求点击该端点将在远程git repo中上载文件。我正在尝试使用mockMvc测试对该端点的POST调用(我只希望看到返回状态“isOk()”)——我不希望我的jUnits实际命中该端点,因为这将导致不必要的文件上载到repo,并且需要稍后清理


我的问题是,mockMvc正在对端点进行实际的POST调用!啊!我以为这都是在嘲笑?!是否可以让mockMvc返回isOk(),而无需实际调用端点并将文件推送到我的远程repo?

Mock MVC只是一个工具,它可以调用标记为
@GetMapping
@PostMapping
等的方法

控制器中的post方法实际上是您需要测试的方法,不应该对其进行模拟,这就是为什么您会遇到真正的端点

我建议您以post方法只将发送请求的工作委托给服务的方式重新构造控制器。这样,您的控制器将只有一行代码(服务调用),同时您将能够模拟服务,使其不会触及真正的端点