当前位置: 首页 > news >正文

代运营一个月多少钱邯郸seo优化公司

代运营一个月多少钱,邯郸seo优化公司,国际电商平台排行榜,北京朝阳建站优化报错信息 java.lang.NullPointerException 空指针异常 空对象引用 来源 对Controller层进行单元测试,解决完Spring上下文报错后继续报错。 解决 在测试方法执行前要为字段完成对象的注入,否则就报空指针异常。 测试例子 不完整启动Spring框架 pub…

报错信息

java.lang.NullPointerException
空指针异常
空对象引用

来源

Controller层进行单元测试,解决完Spring上下文报错后继续报错。

解决

在测试方法执行前要为字段完成对象的注入,否则就报空指针异常。
在这里插入图片描述

测试例子

不完整启动Spring框架
public class SysUserControllerTest {@InjectMocks// 在单元测试中没有启动Spring框架时,通过@InjectMocks完成依赖注入private SysUserController sysUserController;@Mock// 创建模拟对象private SysUserService sysUserService;@BeforeEach// JUnit5 弃用Before,每个测试方法执行之前初始化测试环境public void setUp() {MockitoAnnotations.openMocks(this);// 初始化被@Mock、@Spy、@Captor 和 @InjectMocks 注解的字段}@Testpublic void testSelectOne() throws Exception {// 准备测试数据Serializable id = 1;SysUser sysUser = new SysUser();sysUser.setId(1L);sysUser.setUserName("admain");// 设置mock对象行为// 设置sysUserService的 getById 方法的返回值为 sysUserwhen(sysUserService.getById(id)).thenReturn(sysUser);// 调用被测试的方法// 调用 sysUserController 的 selectOne 方法,并传入 id 参数ResponseResult<SysUser> responseResult = sysUserController.selectOne(id);// 如果 responseResult 的 Code 字段等于 200
//        if (responseResult.getCode() == 200) {
//            // 打印 responseResult 的 JSON 字符串形式
//            System.out.println(JSON.toJSONString(responseResult));
//        }// 断言验证结果assert (responseResult.getData().getUserName().equals(sysUser.getUserName()));}
}
完整启动Spring框架

避免手动注入字段。
注意:完整启动的话->Mockito测试框架中来模拟一个对象的行为会失效(when()失效)。
通常不这样测试,如果需要在单元测试中模拟Spring Boot应用程序的某些功能,可以考虑使用@SpringBootTest

@SpringBootTest
public class SysUserControllerTest {@Autowired// @SpringBootTest完整启动Spring框架时,通过@Autowired完成依赖注入private SysUserController sysUserController;@Mock// 创建模拟对象private SysUserService sysUserService;@Testpublic void testSelectOne() throws Exception {// 准备测试数据Serializable id = 1;SysUser sysUser = new SysUser();sysUser.setId(1L);sysUser.setUserName("admain");// 设置mock对象行为// 设置sysUserService的 getById 方法的返回值为 sysUserwhen(sysUserService.getById(id)).thenReturn(sysUser);// 调用被测试的方法// 调用 sysUserController 的 selectOne 方法,并传入 id 参数ResponseResult<SysUser> responseResult = sysUserController.selectOne(id);// 如果 responseResult 的 Code 字段等于 200
//        if (responseResult.getCode() == 200) {
//            // 打印 responseResult 的 JSON 字符串形式
//            System.out.println(JSON.toJSONString(responseResult));
//        }// 断言验证结果assert (responseResult.getData().getId().equals(sysUser.getId()));}
}
http://www.ds6.com.cn/news/55716.html

相关文章:

  • 疫情最新数据消息中高风险地区地图关键词seo排名怎么做的
  • 即墨网站建设哪家好g3云推广靠谱吗
  • 建筑工程素材资源网站免费收录软文网站
  • 网站首页排版培训学校机构有哪些
  • 网页设计心得体会600字长沙优化科技
  • 做网站如何放入图像企业seo整站优化方案
  • 宝塔做网站443链接杭州谷歌seo公司
  • 网店托管代运营骗局石家庄seo外包的公司
  • 安徽建设工程信息管理平台东莞百度快速优化排名
  • 做旅游门票网站需要什么材料站长友情链接
  • 北京威凯建设发展招聘网站西安网站推广助理
  • 路由器搭建wordpress深圳网站关键词优化公司
  • 电商设计网站素材百度竞价推广专员
  • 专做海外代购的网站seo公司发展前景
  • 中山网站建设企业seo优化网络公司
  • 手机网站制作公司网站优化培训班
  • 河东苏州网站建设淄博网站推广
  • 自己做网站赚钱电商平台推广方案
  • 网站站内内链建设大冶seo网站优化排名推荐
  • 做bbs网站教程网站排名软件推荐
  • 网站建设杭州网站提交工具
  • 做企业网站 需要注意的seo干什么
  • 惠州做网站优化seo咨询
  • 3800给做网站百度的网站网址
  • 网站开发架构mvc培训机构是干什么的
  • 岳阳设计网站推荐淘宝站内推广方式有哪些
  • 宁夏网站建设电话个人怎么在百度上做推广
  • 做网站就是做信息整合网址大全浏览器app
  • wordpress tregoseo 优化公司
  • 宿迁专业网站建设公司如何做自己的网站