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

做网站备案需要什么特殊材料长沙seo外包服务

做网站备案需要什么特殊材料,长沙seo外包服务,wordpress 获取自定义字段,b站网站大全下载Mockito 是一个流行的 Java 模拟测试框架,用于创建和管理测试中的模拟对象(mock objects)。它可以帮助开发者编写干净、可维护的单元测试,特别是在需要隔离被测组件与其他依赖项时。 目录 核心概念 1. 模拟对象(Mock Objects) 2. 打桩(Stubbing) 3. 验…

Mockito 是一个流行的 Java 模拟测试框架,用于创建和管理测试中的模拟对象(mock objects)。它可以帮助开发者编写干净、可维护的单元测试,特别是在需要隔离被测组件与其他依赖项时。

目录

核心概念

1. 模拟对象(Mock Objects)

2. 打桩(Stubbing)

3. 验证(Verification)

1. 测试准备

2. 模拟依赖(Mock)

3. 执行测试 

4. 验证结果 

5. 验证收藏数增加 

总结


核心概念

1. 模拟对象(Mock Objects)

模拟对象是真实对象的替代品,用于在测试中模拟真实对象的行为,而不需要实际调用真实对象。

2. 打桩(Stubbing)

定义模拟对象在特定条件下的行为,即当调用某个方法时返回什么值或抛出什么异常。

3. 验证(Verification)

验证模拟对象的特定方法是否被调用,以及调用的次数和参数是否符合预期。

下面进行实际操作

等待测试的源码:

    @Overridepublic JSONReturn save(Collect collect) {Collect exist = collectMapper.selectExist(collect.getUserId(),collect.getForumId());if(exist != null){return JSONReturn.failed("操作失败,您已收藏该帖子!");}Date date = new Date();collect.setCreateTime(date);collect.setUpdateTime(date);collectMapper.insert(collect);
//        //收藏+1Forum forum = forumMapper.selectByPrimaryKey(collect.getForumId());forum.setCollectNum(forum.getCollectNum() + 1);forumMapper.updateByPrimaryKeySelective(forum);return JSONReturn.success("收藏成功!");}

 以下下是mock的代码

    @Testvoid save_shouldReturnSuccess_whenCollectNotExists() {Collect collect = new Collect();collect.setUserId(2);collect.setForumId(9);when(collectMapper.selectExist(2, 9)).thenReturn(null); Forum forum = new Forum();forum.setCollectNum(0);when(forumMapper.selectByPrimaryKey(9)).thenReturn(forum);JSONReturn result = collectService.save(collect);assertEquals("收藏成功!", result.getMsg());  // Should return success messageverify(collectMapper, times(1)).selectExist(2, 9);verify(collectMapper, times(1)).insert(collect);verify(forumMapper, times(1)).updateByPrimaryKeySelective(any(Forum.class));ArgumentCaptor<Forum> forumCaptor = ArgumentCaptor.forClass(Forum.class);verify(forumMapper).updateByPrimaryKeySelective(forumCaptor.capture());Integer collectNum = forumCaptor.getValue().getCollectNum();assertEquals(new Integer(1), collectNum);}

这是一个单元测试方法,测试当收藏记录不存在时成功保存收藏的功能。下面是对代码的逐步解释:

1. 测试准备

Collect collect = new Collect();
collect.setUserId(2);
collect.setForumId(9);

创建一个新的收藏对象,设置用户ID为2,论坛ID为9。

2. 模拟依赖(Mock)

when(collectMapper.selectExist(2, 9)).thenReturn(null);

模拟collectMapper.selectExist(2, 9)方法调用,返回null表示该收藏记录不存在。

Forum forum = new Forum();
forum.setCollectNum(0);
when(forumMapper.selectByPrimaryKey(9)).thenReturn(forum);

创建一个论坛对象,设置收藏数为0,并模拟forumMapper.selectByPrimaryKey(9)返回这个论坛对象。

3. 执行测试 

JSONReturn result = collectService.save(collect);

调用被测试的collectService.save()方法。

4. 验证结果 

assertEquals("收藏成功!", result.getMsg());

验证返回的消息是"收藏成功!"。

verify(collectMapper, times(1)).selectExist(2, 9);
verify(collectMapper, times(1)).insert(collect);

验证:

  • selectExist方法被调用了一次

  • insert方法被调用了一次

verify(forumMapper, times(1)).updateByPrimaryKeySelective(any(Forum.class));

验证updateByPrimaryKeySelective方法被调用了一次。

5. 验证收藏数增加 

ArgumentCaptor<Forum> forumCaptor = ArgumentCaptor.forClass(Forum.class);
verify(forumMapper).updateByPrimaryKeySelective(forumCaptor.capture());
Integer collectNum = forumCaptor.getValue().getCollectNum();
assertEquals(new Integer(1), collectNum);

使用ArgumentCaptor捕获传递给updateByPrimaryKeySelective的Forum对象,验证其收藏数从0增加到了1。

总结

这个测试验证了当用户收藏一个尚未收藏的论坛时:

  1. 系统会检查该收藏记录是否存在

  2. 如果不存在则创建新收藏记录

  3. 更新论坛的收藏数(+1)

  4. 返回成功消息

测试覆盖了收藏服务的主要逻辑路径,确保在收藏记录不存在时的正确行为。

 

 

 

 

 

http://www.dtcms.com/wzjs/469987.html

相关文章:

  • 建立网站一般会遇到什么问题营销的方法手段有哪些
  • 厦门seo排名优化公司优化关键词排名外包
  • 深圳网站建设的黄页引流推广
  • 广东建设企业网站哪家好搜索指数在线查询
  • 服务关系型网站怎么做百度百度地图
  • 负责公司网站建设的岗位叫什么手机上怎么制作网页
  • 怎样优化网站排名靠前网站测试报告
  • 防录屏网站怎么做谷歌排名网站优化
  • 日照高端网站建设公司产品推广文案
  • 外贸企业网站模版旅行网站排名前十名
  • 网站怎样做能排名靠前潍坊网站关键词推广
  • 关于做网站的笑话电商培训
  • 哪个网站做电子请帖好营销推广公司案例
  • 河东做网站网络游戏推广怎么做
  • 文字网站居中东莞外贸优化公司
  • 全国特种作业人员证查询seo推广的网站和平台有哪些
  • 网站建设英文翻译网站推广计划方法
  • 网易博客 wordpress宁波网络推广seo软件
  • 做网站编辑累吗整合营销传播的方法包括
  • 南海大良网站建设螺蛳粉营销策划方案
  • 网站后台如何上传附件做电商需要学哪些基础
  • 甘肃网站建设项目网络营销的方法是什么
  • 营销型网站建设 深圳信科产品推广计划怎么写
  • 网站建设的网络公短视频seo营销系统
  • 辅助软件定制站内优化怎么做
  • soho设计网站潍坊网站建设公司
  • 做网站要具备些什么条件百度云盘网页登录入口
  • 大朗网站仿做销售的技巧与口才
  • 创建网站目录应注意网络推广合同
  • 厂房网络推广平台徐州关键词优化排名