开发者社区 > 云原生 > 微服务 > 正文

【精品问答】Java微服务架构之Spring Boot核心知识 100问(附源码)

已解决

如何验证依赖方法?

展开
收起
游客lmkkns5ck6auu 2022-10-26 18:10:22 898 0
1 条回答
写回答
取消 提交回答
  • 推荐回答

    在单元测试中,验证是确认模拟的依赖方法是否按照预期被调用或未调用的过程。 Mockito 提供了许多方法来验证依赖方法调用,给我们编写单元测试用例带来了很 大的帮助。

    1. 根据参数验证方法调用 1) 验证无参数方法调用 2) 验证指定参数方法调用 3) 验证任意参数方法调用 4) 验证可空参数方法调用 5) 验证必空参数方法调用 6) 验证可变参数方法调用 对于一些变长度参数方法,可以按实际参数个数进行验证: 也可以用 Mockito.any()进行通用验证:

    2. 验证方法调用次数 1) 验证方法默认调用 1 次 2) 验证方法从不调用 3) 验证方法调用 n 次 4) 验证方法调用至少 1 次 5) 验证方法调用至少 n 次 6) 验证方法调用最多 1 次 7) 验证方法调用最多 n 次 8) 验证方法调用指定 n 次 Mockito 允许按顺序进行验证方法调用,未被验证到的方法调用将不会被标记为已 验证。 9) 验证对象及其方法调用 1 次 用于验证对象及其方法调用 1 次,如果该对象还有别的方法被调用或者该方法调用 了多次,都将导致验证方法调用失败。

    3. 验证方法调用并捕获参数值 Mockito 提供 ArgumentCaptor 类来捕获参数值,通过调用 forClass(Class clazz) 方法来构建一个 ArgumentCaptor 对象,然后在验证方法调用时来捕获参数,最后 获取到捕获的参数值并验证。如果一个方法有多个参数都要捕获并验证,那就需要 创建多个 ArgumentCaptor 对象。

    以上内容摘自《Java工程师必读手册》电子书,点击https://developer.aliyun.com/ebook/download/7780 可下载完整版

    2022-10-26 20:22:00
    赞同 展开评论 打赏

为微服务建设降本增效,为微服务落地保驾护航。

相关电子书

更多
MaxCompute架构升级及开放性解读 立即下载
MaxCompute Serverless 架构演进 立即下载
阿里云消息队列的 Serverless架构演进 立即下载