Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/unit-testing/4.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 将Jest与ReactDOM.findDOMNode一起使用_Javascript_Unit Testing_Reactjs_Mocking_Jestjs - Fatal编程技术网

Javascript 将Jest与ReactDOM.findDOMNode一起使用

Javascript 将Jest与ReactDOM.findDOMNode一起使用,javascript,unit-testing,reactjs,mocking,jestjs,Javascript,Unit Testing,Reactjs,Mocking,Jestjs,Jest(从技术上讲,是使用ReactTestRenderer进行Jest快照测试) 我已经看到我可以在哪里使用笑话模拟来解决这个问题。例如,如果myChannelScanner组件使用myRadioButtonSet组件进行包装,然后将以下代码放入ChannelScanner.test.js中,则允许快照测试工作: jest.mock('../../src/components/forms/RadioButtonSet', () => 'RadioButtonSet'); 然而,这似乎

Jest(从技术上讲,是使用ReactTestRenderer进行Jest快照测试)

我已经看到我可以在哪里使用笑话模拟来解决这个问题。例如,如果my
ChannelScanner
组件使用my
RadioButtonSet
组件进行包装,然后将以下代码放入
ChannelScanner.test.js
中,则允许快照测试工作:

jest.mock('../../src/components/forms/RadioButtonSet', () => 'RadioButtonSet');
然而,这似乎打破了封装:RadioButtonSet的测试必须根据它使用的组件和它们使用的可传递组件建立模拟,并且这项工作必须对每个组件重复

最好的处理方法是什么?除了启用之外,是否有一种好的方式可以说,“这个模块知道它需要在出现时模仿自己?”