Testable Mock
文章平均质量分 70
记录开源单元测试Mock工具
每天都要进步一点点
工作日常技术学习、积累、总结
展开
-
单元测试框架TestableMock快速入门(七):常用注解参数
基于轻量的原则,TestableMock为开发者提供了尽可能精炼、易用的注解组合,以下参数信息可供开发参考。@EnablePrivateAccess启用对被测类的私有成员访问编译期增强和私有目标存在性的编译期校验功能。作用于:测试类参数 类型 是否必须 默认值 作用 srcClass Class 否 N/A 当测试类命名不符合约定时,指定实际被测类 verifyTargetOnCompile boolean 否 true原创 2021-09-23 10:21:13 · 584 阅读 · 1 评论 -
单元测试框架TestableMock快速入门(六):Mock泛型方法/模板方法
目录一、概述二、使用泛型定义三、使用Object类型一、概述有时候,我们需要测试泛型方法,其实与普通方法的Mock方法相同,直接在Mock方法上使用相同的泛型参数即可。下面通过案例说明如何使用,主要有两种方式:第一种方式:使用泛型定义; 第二种方式:使用Object类型;二、使用泛型定义【a】编写被测试类package com.wsh.testable.mock.testablemockdemo;import java.util.ArrayList;import原创 2021-09-23 10:16:09 · 2443 阅读 · 0 评论 -
单元测试框架TestableMock快速入门(五):复用Mock类与方法
一、概述“Don't Repeat Yourself”是软件开发过程当中的一项重要原则(即“DRY原则”),在编写测试代码时,有些通用的基础功能调用语句常常出现在许多相似的业务类里,若测试中需要Mock这些调用,就要在各个测试类中重复提供同样的Mock方法。而通过Mock方法的复用机制,能够很好的避免编写臃肿重复Mock代码的麻烦。TestableMock支持两种粒度的Mock复用方式:复用Mock类和复用Mock方法。二、复用Mock类如果有两个或以上测试类需要Mock的方法近乎相同,那么原创 2021-09-22 20:24:07 · 1610 阅读 · 0 评论 -
单元测试框架TestableMock快速入门(四):Mock的生效范围
目录一、概述二、使用案例一、概述在@MockMethod和@MockConstructor注解上都有一个scope参数,其可选值有两种:MockScope.GLOBAL:该Mock方法将全局生效; MockScope.ASSOCIATED:该Mock方法仅对Mock容器关联测试类中的测试用例生效;对于常规项目而言,单元测试里需要被Mock的调用都是由于其中包含了不需要或不便于测试的逻辑,譬如“依赖外部系统”、“包含随机结果”、“执行非常耗时”等等,这类调用在整个单元测试的生命周期里都原创 2021-09-22 15:33:37 · 1584 阅读 · 0 评论 -
单元测试框架TestableMock快速入门(三):校验Mock调用
目录一、概述二、基本校验器三、基本匹配器四、空值匹配器五、字符串匹配器六、万能匹配器七、使用示例一、概述在测试中,除了需要将某些含有外部依赖的方法替换为Mock,经常还会需要验证该方法被调用时的参数是否符合预期。在TestableMock中提供了校验器(verifier)和匹配器(matcher)来实现这一功能。譬如:@Testpublic test_case() { int res = insToTest.methodToTest(); ve原创 2021-09-22 14:57:28 · 1202 阅读 · 0 评论 -
单元测试框架TestableMock快速入门(二):访问私有成员字段和方法
目录一、概述二、使用PrivateAccessor工具类三、直接访问私有成员一、概述如今关于私有方法是否应该做单元测试的争论正逐渐消停,开发者的普遍实践已经给出事实答案。通过公有方法间接测私有方法在很多情况下难以进行,开发者们更愿意通过修改方法可见性的办法来让原本私有的方法在测试用例中变得可测。此外,在单元测试中时常会需要对被测对象进行特定的成员字段初始化,但有时由于被测类的构造方法限制,使得无法便捷的对这些字段进行赋值。那么,能否在不破坏被测类型封装的情况下,允许单元测试用例内的代原创 2021-09-22 14:14:39 · 2308 阅读 · 0 评论 -
单元测试框架TestableMock快速入门(一):快速Mock任意调用
目录一、TestableMock概述二、快速Mock被测类的任意方法调用三、覆写任意类的方法调用四、覆写任意类的new操作五、在Mock方法中区分调用来源六、注意点一、TestableMock概述TestableMock是阿里云效团队开发的一款快速Mock的单元测试框架,旨在"让Java没有难测的代码"。TestableMock现在已不仅是一款轻量易上手的单元测试Mock工具,更是以简化Java单元测试为目标的综合辅助工具集,包含以下功能:快速Mock任意调用:使原创 2021-09-22 09:53:07 · 4729 阅读 · 0 评论