一、桩件(stub)和仿件对象(Mock)概念
桩件(stub):
将对象替换为(可选地)返回配置好的返回值的测试替身的实践方法称为上桩(stubbing)。可以用桩件(stub)来“替换掉被测系统所依赖的实际组件,这样测试就有了对被测系统的间接输入的控制点。这使得测试能强制安排被测系统的执行路径,否则被测系统可能无法执行”。
仿件对象(Mock):
将对象替换为能验证预期行为(例如断言某个方法必会被调用)的测试替身的实践方法称为模仿(mocking)。
可以用 仿件对象(mock object)“作为观察点来核实被测试系统在测试中的间接输出。通常,仿件对象还需要包括桩件的功能,因为如果测试尚未失败则仿件对象需要向被测系统返回一些值,但是其重点还是在对间接输出的核实上。因此,仿件对象远不止是桩件加断言,它是以一种从根本上完全不同的方式来使用的”(Gerard Meszaros)。

本文介绍了桩件(stub)和仿件对象(Mock)在PHPUnit单元测试中的应用。桩件用于替代被测系统依赖的组件,提供可控的输入。仿件对象则用于验证方法是否被调用及其调用参数。文中通过购买水果的例子,展示了如何使用桩件减少测试依赖,并简要提及了仿件对象的概念。
和仿件对象(Mock)的理解&spm=1001.2101.3001.5002&articleId=52198716&d=1&t=3&u=cd5a275f77f044319955ee824cb197ff)
444

被折叠的 条评论
为什么被折叠?



