后门操作准备数据
什么是后门操作
后门操作是指,通过调用非公开的 API 来准备测试数据。
比如在一个 Todo 项目中,我们要测试 removeTodo 功能(通过 id 删除 todo)是否正常。
但我们还没有实现 addTodo 函数。
这时候,我们就可以直接往 todos 里 push 一个 todo 来测试。
const todo = {
id: 0,
title: "work",
};
store.todos.push(todo);
这就是后门操作准备数据。
这种操作方式和业务代码的实现有非常大的耦合。
比如上面代码就暴露了 todo 的数据结构。
如果之后 todo 里增加了属性,那这个测试里的代码也会报错。
脆弱的测试
这种测试就是脆弱的测试。
这种测试一多,大家就都不敢去修改业务代码了。
但这里由于还没有实现
addTodo,所以也可以先使用后门操作,测试完removeTodo。随后
addTodo功能实现后,就替换掉后门操作。一定要替换掉。
尽可能不要使用后门操作,优先使用
round-trip方式。