从这个文档:https ://reactjs.org/docs/hooks-faq.html#how-to-test-components-that-use-hooks
文档提供了一种设置和拆除测试的方法,如下所示:
let container;
beforeEach(() => {
container = document.createElement('div');
document.body.appendChild(container);
});
afterEach(() => {
document.body.removeChild(container);
container = null;
});
从这个文档:https ://reactjs.org/docs/testing-recipes.html#setup--teardown
设置和拆卸方式如下:
import { unmountComponentAtNode } from "react-dom";
let container = null;
beforeEach(() => {
// setup a DOM element as a render target
container = document.createElement("div");
document.body.appendChild(container);
});
afterEach(() => {
// cleanup on exiting
unmountComponentAtNode(container);
container.remove();
container = null;
});
我有点困惑哪一个是拆解测试的最佳方法?
unmountComponentAtNode
+dom.remove()
或document.body.removeChild
?
更新
这两个官方文档在拆机测试时给出了这两种方式,是否意味着它们都可以?它们是等价的吗?或者是什么?