testable-mock
testable-mock copied to clipboard
被测类间接依赖的静态方法调用没法mock
被测类A,有个方法a,a方法里生成了个对象b,b的某个方法调用Utils的静态方法s,该静态方法mock不生效 但若在a中直接调用静态方法s,则mock生效
Testable的Mock的只会对Mock类自身关联的业务类生效。
对于 A.a() -> B.b() -> Util.s() 这样的调用链,如果希望Mock掉 b() 方法里的调用,则相应Mock方法需要放在 B 类型的Mock类里(比如BTest.Mock类型)。Mock类是与业务类关联而不是与测试用例关联,这一点和其他Mock框架有所不同。