使用 Jest 模拟和 Enzyme 浅层渲染,您将如何测试或模拟以下内容?:
onClick = () => {
const inputNode = this.node.querySelector('input');
inputNode.click();
};
我尝试过:
it('calls button', () => {
const wrapper = shallow(
<Component />,
);
const wrapperInstance = wrapper.instance();
const inputNode = document.createElement('input');
inputNode.value = '';
const node = document.createElement('div').appendChild(inputNode);
wrapperInstance.node = node;
});
最佳答案
这是我模拟节点的方式。
it('calls button', () => {
const wrapper = shallow(
<Component />,
);
const wrapperInstance = wrapper.instance();
const input = {value: 'someValue'}
const node = {
querySelector: (v) => v === 'input' ? input : null
}
wrapperInstance.node = node;
});
关于javascript - 如何使用 Jest 模拟 + Enzyme 浅层测试和/或模拟 ref 回调节点并测试 .querySelector?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/44009274/