zoukankan      html  css  js  c++  java
  • springboot(5)单元测试及MockMVC类的使用及自定义异常处理

    springboot @SpringBootTest单元测试
    1、引入相关依赖
    <!--springboot程序测试依赖,如果是自动创建项目默认添加-->
    <dependency>
    <groupId>org.springframework.boot</groupId>
    <artifactId>spring-boot-starter-test</artifactId>
    <scope>test</scope>
    </dependency>


    2、使用
    @RunWith(SpringRunner.class) //底层用junit SpringJUnit4ClassRunner
    @SpringBootTest(classes={XdclassApplication.class})//启动整个springboot工程
    public class SpringBootTests { }

    SpringBoot测试 MockMvc类的使用
    1、增加类注解 @AutoConfigureMockMvc
    @SpringBootTest(classes={XdclassApplication.class})
    2、相关API
    perform:执行一个RequestBuilder请求
    andExpect:添加ResultMatcher->MockMvcResultMatchers验证规则
    andReturn:最后返回相应的MvcResult->Response


    springboot2.x配置全局异常处理
    1、默认异常测试 int i = 1/0,不友好

    2、异常注解介绍
    @ControllerAdvice 如果是返回json数据 则用 RestControllerAdvice,就可以不加 @ResponseBody

    //捕获全局异常,处理所有不可知的异常
    @ExceptionHandler(value=Exception.class)

    springboot2.x自定义全局异常
    1、返回自定义异常界面,需要引入thymeleaf依赖
    <dependency>
    <groupId>org.springframework.boot</groupId>
    <artifactId>spring-boot-starter-thymeleaf</artifactId>
    </dependency>


    2、resource目录下新建templates,并新建error.html
    ModelAndView modelAndView = new ModelAndView();
    modelAndView.setViewName("error.html");
    modelAndView.addObject("msg", e.getMessage());
    return modelAndView;


    https://docs.spring.io/spring-boot/docs/2.1.0.BUILD-SNAPSHOT/reference/htmlsingle/#boot-features-error-handling

  • 相关阅读:
    webp怎么打开 webp怎么转换成jpg
    波浪运动
    缓动
    动画的封装
    单张滑动tab 组件
    明星单品tab
    多个tab选项卡
    下拉框
    购物车css样式效果
    菜单导航兼容和不兼容捕获方法
  • 原文地址:https://www.cnblogs.com/suncm/p/10893904.html
Copyright © 2011-2022 走看看