front-end test
内联 低层次的代码,测试数据简单 一开始可以使用内联的方式 当测试数据变得复杂的时候 进行重构
委托:使用一个函数 中高层次的代码,测试数据复杂 可读性更高,利用函数参数、可以和内联方式联合使用 放到对应的文件夹中「helpers」
隐式 使用 beforeEach、每一个测试 case 都需要用到 导致代码分割、可读性变了 --》 可以使用 describe 来包裹需要用到同样测试数据的测试,在 describe 中的 beforEach 去创建测试数据
可以一上来就使用内联、之后再使用重构手法重构
// 调用非公开api 的方式来准备测试数据 优先使用 round-trip 的方式,但是如果我们此时没有 addTodo 这个方法的话就可以先使用后门的方式,之后有 addTodo 了再对这个代码进行重构
后门方式准备测试数据会,因为跟我们的业务代码逻辑可能会高度重合,使这个测试变得很脆弱,这样的代码多了,我们对我们自己的单元测试就会不信任了,之后不得不放弃这些测试
在准备测试数据的时候,和当前要测试的功能无关的数据不需要提供 保持单元测试的可读性 给数据一些默认值,只传我们需要的 委托-工厂函数 来隐藏不需要的函数 虚拟对象的方式