SpringBootTest使用MockMvc测试Controller

SpringBootTest使用MockMvc测试Controllerimportstaticorg.springframework.test.web.servlet.request.MockMvcRequestBuilders.*;importstaticorg.springframework.test.web.servlet.result.MockMvcResultMatchers.*;@RunWith(SpringRunner.class)@…

大家好,又见面了,我是你们的朋友全栈君。

import static org.springframework.test.web.servlet.request.MockMvcRequestBuilders.*;
import static org.springframework.test.web.servlet.result.MockMvcResultMatchers.*;

@RunWith(SpringRunner.class)
@SpringBootTest
public class ReportControllerTest {
    @Autowired
    private WebApplicationContext context;
    private MockMvc mockMvc;
    @Before
    public void setUp(){
        mockMvc = MockMvcBuilders.webAppContextSetup(context).build();  //构造MockMvc
    }
    @Test
    public void report() throws Exception{
        ArrayList<Contact> contacts = Lists.newArrayList(
                new Contact("2018-09-02 10:31:41","74","被叫","02259925401","上海"),
                new Contact("2018-09-02 11:27:24","114","被叫","02759279698","上海"),
                new Contact("2018-09-02 11:29:36","205","被叫","02259925463","上海"),
                new Contact("2018-09-02 11:36:05","25","被叫","02259991437","上海")
        );

        InputInfo inputInfo = new InputInfo();
        inputInfo.setBackTrackingPoint("");
        inputInfo.setIdCard("430422199009098899");
        inputInfo.setMobile("13077316470");
        inputInfo.setToken("3497d797715f4710966678e945d6d348");
        inputInfo.setTrueName("sa");
        inputInfo.setContacts(contacts);

        String jsonData = JSON.toJSONString(inputInfo);
        System.out.println(jsonData);

        String responseString = mockMvc.perform(post("/cuishoufen/report")
                .content(jsonData).contentType(MediaType.APPLICATION_JSON)) // json 参数和类型
                .andExpect(status().is(200))
                .andReturn().getResponse().getContentAsString();   //将相应的数据转换为字符串
        System.out.println("-----返回的json = " + responseString);

 

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/137679.html原文链接:https://javaforall.net

(0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • android 安装p12证书,如何在Android中使用p12证书(客户端证书)

    android 安装p12证书,如何在Android中使用p12证书(客户端证书)我试图在android中使用客户端证书。我得到了一个.p12文件,我想用它来对服务器进行身份验证。如何在Android中使用p12证书(客户端证书)我正在使用portecle将.p12文件转换为.bks文件,但我似乎没有得到它的工作。下面的代码:packagecom.pa1406.SECURE;importjava.io.InputStream;importjava.security.Ke…

    2022年6月26日
    90
  • TCP TimeWait状态详解(比较全)[通俗易懂]

    TCP TimeWait状态详解(比较全)[通俗易懂]转载自:http://blog.chinaunix.net/uid-20384806-id-1954363.htmlTIME_WAIT状态TCP要保证在所有可能的情况下使得所有的数据都能够正确被投递。当关闭一个socket连接时,主动关闭一端的socket将进入TIME_WAIT状态,而被动关闭一方则转入CLOSED状态。见图解。 当一个socket关

    2022年6月3日
    54
  • 在图形管理工具mysql workbench窗口_sqlite可视化工具

    在图形管理工具mysql workbench窗口_sqlite可视化工具可视化数据库管理工具MySQLWorkbench的安装配置及使用MySQLWorkbench是为数据库管理员、程序开发者和系统规划师提供可视化的Sql开发、数据库建模、以及数据库管理功能的工具。1.下载官网下载地址:https://dev.mysql.com/downloads/workbench/这里下载的版本是:community,为社区版,非商用,可以免费使用。2.安装安装过程就不多说了,双击安装,根据提示进行,非常简单。3.打开安装完成后,双击桌面图标即可打开,界

    2022年8月22日
    3
  • android:强大的图片下载和缓存库Picasso

    android:强大的图片下载和缓存库Picasso

    2021年12月2日
    37
  • 操作系统用户态和内核态之间的切换过程是什么_用户进程从用户态切换到内核态

    操作系统用户态和内核态之间的切换过程是什么_用户进程从用户态切换到内核态操作系统用户态和内核态之间的切换过程1.用户态和内核态的概念区别究竟什么是用户态,什么是内核态,这两个基本概念以前一直理解得不是很清楚,根本原因个人觉得是在于因为大部分时候我们在写程序时关注的重点和着眼的角度放在了实现的功能和代码的逻辑性上,先看一个例子:1)例子voidtestfork(){if(0==fork())…

    2022年9月17日
    0
  • 游戏3d模型如何放到计算机中,三维建模技术在三维游戏中的应用

    游戏3d模型如何放到计算机中,三维建模技术在三维游戏中的应用张程怡摘要计算机图像技术及三维建模技术的不断发展,是三维游戏出现的重要原因之一。三维建模技术可以将现实中的物品和人在二维平面进行三维形态的模拟或再加工,达到将美术设计和计算机技术有机结合的效果,给人立体真实的感受。因此在三维游戏的制造过程中,三维建模技术得到了广泛应用。文章对三维建模技术的发展历程,三维建模技术在游戏中的运用原理进行了介绍,同时对于三维建模技术在三维游戏应用中仍存的问题及其发展…

    2022年5月12日
    69

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号