Spring Test中使用MockMvc进行上传文件单元测试时,报NullPointerException

问题:
MockMvc peform在集成测试中返回nullPointerException
原因:
  • springboot-2.x版本以上,当你添加依赖spring_boot_starter_test后,可以在内部看到自带了jupiter测试核心模块,也就是 junit5,junit5(jupiter测试引擎)不再支持junit4(vintage测试引擎),在使用时自然不再需要spring来提供了,即不需要再使用@runWith注解,也就是在你的单元测试类上面不用再加@RunWith!!!
解决方案:
  • @Test 注解,请导入"org.junit.jupiter.api.Test"
  • 把网上那些教程里面setUp()方法上面的@Before注解 换成 @BeforeEach注解,请导入"org.junit.jupiter.api.BeforeEach"
  • 不需要再在测试类上面添加@RunWith(***.class),前提是springboot版本在2.x以上哈,为什么看上面的原因!
相关推荐
亲爱的非洲野猪17 分钟前
深入解析享元模式:用Java实现高性能对象复用
java·开发语言·享元模式
qq_4017004129 分钟前
Qt 事件处理机制
java·数据库·qt
rannn_1111 小时前
【Java项目】中北大学Java+数据库课设|校园食堂智能推荐与反馈系统
java·数据库·后端·课程设计·中北大学
NE_STOP1 小时前
SpringBoot-shiro-jwt-dubbo-redis分布式统一权限系统(完结)
java
zfj3211 小时前
java函数式接口 @FunctionalInterface用法
java·函数·function
TracyCoder1231 小时前
并发编程(二):Java原子类(Atomic Classes)全解析
java·原子类·atomic
野犬寒鸦2 小时前
从零起步学习MySQL || 第十六章:MySQL 分库分表的考量策略
java·服务器·数据库·后端·mysql
木风小助理2 小时前
JavaAtomicInteger底层实现深度解析
java
BD_Marathon2 小时前
搭建MyBatis框架之创建MyBatis的映射文件(五)
java·数据库·mybatis
一只叫煤球的猫2 小时前
为什么Java里面,Service 层不直接返回 Result 对象?
java·spring boot·面试