jest/no-hooks 样式
它的作用
不允许使用 Jest 安装和卸载挂钩,例如 beforeAll
。
为什么这样做不好?
Jest 提供了全局函数用于实现设置和卸载任务,该函数在每种测试用例和每组测试用例之前/之后调用。使用这些挂钩促进了测试间共享状态。
本规则以下列函数调用进行报告
beforeAll
beforeEach
afterAll
afterEach
示例
javascript
function setupFoo(options) {
/* ... */
}
function setupBar(options) {
/* ... */
}
describe("foo", () => {
let foo;
beforeEach(() => {
foo = setupFoo();
});
afterEach(() => {
foo = null;
});
it("does something", () => {
expect(foo.doesSomething()).toBe(true);
});
describe("with bar", () => {
let bar;
beforeEach(() => {
bar = setupBar();
});
afterEach(() => {
bar = null;
});
it("does something with bar", () => {
expect(foo.doesSomething(bar)).toBe(true);
});
});
});