Mock 或 Stub 有什么区别?
Posted programb
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Mock 或 Stub 有什么区别?相关的知识,希望对你有一定的参考价值。
存根
一个有助于运行测试的虚拟对象。
在某些可以硬编码的条件下提供固定行为。
永远不会测试存根的任何其他行为。
例如,对于空堆栈,您可以创建一个只为 empty()方法返回 true 的存根。因此,
这并不关心堆栈中是否存在元素。
一个虚拟对象,其中最初设置了某些属性。
此对象的行为取决于 set 属性。
也可以测试对象的行为。
例如,对于 Customer 对象,您可以通过设置名称和年龄来模拟它。您可以将 age设置为 12,然后测试 isAdult()方法,该方法将在年龄大于 18 时返回 true。因此,您的 Mock Customer 对象适用于指定的条件。
以上是关于Mock 或 Stub 有什么区别?的主要内容,如果未能解决你的问题,请参考以下文章
Spock测试框架中Mock / Stub / Spy之间的区别