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

天津泰达建设集团网站hao123浏览器下载安装

天津泰达建设集团网站,hao123浏览器下载安装,比较好的软文发布平台,建设部或国土资源管理局的网站SpringBootTest & Mockito 虚实结合测试 起因 单一使用mockito,会出现很多mock困难的问题,导致测试编写过程太长,太恶心 单一使用springboottest,会遇到需要外部接口的地方,这个时候就非得去真实调用才行。也很恶…

SpringBootTest & Mockito 虚实结合测试

起因

单一使用mockito,会出现很多mock困难的问题,导致测试编写过程太长,太恶心
单一使用springboottest,会遇到需要外部接口的地方,这个时候就非得去真实调用才行。也很恶心
所以 想到了混合使用 ,这个方法非原创,纯记录,以下的内容都是自己真实的

常用注解

注解使用时机
@MockBean全部都走mock
@SpyBean除特殊指定mock外,都执行真实方法

示例

import cn.hutool.core.util.RandomUtil;
import com.xxxx.util.exception.ServiceException;
import com.xxxx.xxx.common.core.entity.user.xxxxConfig;
import com.xxxx.xxx.common.core.utils.SecurityUtils;
import com.xxxx.xxx.common.mybatis.mapper.userMapper;
import com.xxxx.xxx.user.dto.xxxxDTO;
import com.xxxx.xxx.user.service.xxxxConfigService;
import com.xxxx.xxx.user.vo.xxxxVO;
import com.xxxx.xxx.verify.code.service.xxxxService;
import org.junit.jupiter.api.BeforeEach;
import org.junit.jupiter.api.DisplayName;
import org.junit.jupiter.api.Test;
import org.mockito.Mockito;
import org.springframework.boot.test.context.SpringBootTest;
import org.springframework.boot.test.mock.mockito.MockBean;
import org.springframework.test.annotation.Rollback;
import org.springframework.transaction.annotation.Transactional;import javax.annotation.Resource;@Transactional
@SpringBootTest
@Rollback
// 当模块中存在websocket的时候,需要使用下方注解配置,方可启动成功(以下配置会启动服务)
// @SpringBootTest(webEnvironment = SpringBootTest.WebEnvironment.RANDOM_PORT)
class XxxxConfigServiceImplTest {@Resourceprivate XxxxConfigService xxxxConfigService;@MockBean(name = "userMapper")private UserMapper myUserMapper;@Resourceprivate XxxxService xxxxService;public static final String ACCOUNT = RandomUtil.randomString(8);public static final String TEL = RandomUtil.randomNumbers(11);@BeforeEachvoid init() {// mock方法返回Mockito.when(myUserMapper.selectTelByAccount(Mockito.anyString())).thenReturn(TEL);}@Test@DisplayName("修改:成功")void update() {// 以下都是执行真实代码xxxxDTO xxDTO = new xxxxDTO();xxDTO.setAccount(ACCOUNT);xxDTO.setPassword("123456");xxDTO.setStartTime("00:00");xxDTO.setEndTime("23:59");xxDTO.setCaptchaCode("0000");xxxxConfigService.sendCode(ACCOUNT);xxxxConfigService.update(xxDTO);xxxxConfig controlConfig = xxxxConfigService.lambdaQuery().eq(xxxxConfig::getAccount, ACCOUNT).one();assert controlConfig.getAccount().equals(xxDTO.getAccount());assert controlConfig.getStartTime().equals(xxDTO.getStartTime());assert controlConfig.getEndTime().equals(xxDTO.getEndTime());}
}

常见问题

  • MockBean导致启动失败,提示 org.springframework.beans.factory.NoUniqueBeanDefinitionException: No qualifying bean of type ‘xxx’
    解决方法:
       // 属性名换一个 myUserMapper@MockBean(name = "userMapper")private UserMapper myUserMapper;
    
http://www.yayakq.cn/news/247152/

相关文章:

  • 怎样python做网站php网站虚拟机价格
  • 最重要的网站seo做的最好的网站
  • 网站建设下拉导航栏东莞专业网站推广公司
  • 郑州便宜网站建设费用网站改版建设的目的
  • 内蒙建设厅官方网站站酷设计官方网站
  • 阿里云做网站视频教程网站界面的版式架构
  • 品牌便宜网站建设企业网站托管
  • 网站建设的具体实施方案wordpress怎么做弹窗
  • 学网站开发的书用wex5可以做网站吗
  • 杭州自助建站模板各大引擎搜索入口
  • 建设网站的目的是为了的英语vs2015是网站开发
  • 保山网站开发服务工作服定制厂家
  • 网站备案有电话来全球速卖通抢单赚取佣金
  • 滁州建设网站网站做多大的宽高
  • 爱站网关键字挖掘wordpress微信qq登录
  • 石家庄网站制作找谁网站做的一般怎么评价
  • 公司品牌vi设计是什么网络推广和信息流优化一样么
  • 怎么用ps做网站首页电子工程王力卓
  • 沈阳网站建设方案外包二手物品交易网站开发环境
  • 网站开发费记什么会计科目如何查看用wordpress建的站点
  • 外国人做家具的网站网站建设教程pdf百度云
  • delphi 做直播网站wordpress编辑图片
  • 重庆云端设计网站建设网站引导页一般是什么格式
  • wordpress 获取分类下的文章网站做seo
  • 建手机网站没有注册公司怎么做网站
  • 山东住房城乡建设部网站dw怎么做网站地图
  • 一般网站空间要多大金山网站制作
  • 哪个旅游网站可以做私人定制网站开发找聚脑网
  • 佛山网站建设怎么选做ps兼职的网站有哪些
  • 柬埔寨网站建设运营维护wordpress海报功能