Reactjs Jest测试回调

Reactjs Jest测试回调,reactjs,jestjs,Reactjs,Jestjs,我想在来自子组件的回调返回父组件时测试回调。 在父级,SearchResult2组件声明如下,以调用可生成结果的子组件: SearchResult2.js return ( <ResultTable handlerClick={result => this.callbackHandlerFunction(result)} searchResultData={listAddRessSearch} sav

我想在来自子组件的回调返回父组件时测试回调。 在父级,SearchResult2组件声明如下,以调用可生成结果的子组件:

SearchResult2.js

return (            
      <ResultTable
        handlerClick={result => this.callbackHandlerFunction(result)}
        searchResultData={listAddRessSearch}
        saveFilterSearchResultByRightTable={
          this.props.saveFilterSearchResultByRightTable
        }
      />
)
返回(
this.callbackHandlerFunction(result)}
searchResultData={listAddRessSearch}
saveFilterSearchResultByRightTable={
this.props.saveFilterSearchResultByRightTable
}
/>
)
SearchResult2包含子Resultable。 我只想测试它来测试回调handlerClick={result=>this.callbackHandlerFunction(result)}

所以我咨询了stackoverflow并尝试编写UT代码 链接:

这里我用笑话来测试。 测试上述回调的UT代码

SearchResult2.test.js

it('should invoke the callbackHandlerFunction callback', () => {
store.dispatch = jest.fn();
let wrapper = shallow(<SearchResult2 store={store} {...props} />);
let mockFn = jest.fn();
wrapper
  .dive()
  .dive()
  .instance().callbackHandlerFunction = mockFn;
wrapper
  .find('ResultTable')
  .props()
  .handlerClick();
expect(mockFn).toHaveBeenCalledTimes(1);});
it('应该调用callbackHandlerFunction回调',()=>{
store.dispatch=jest.fn();
让包装器=浅();
让mockFn=jest.fn();
包装纸
.潜水
.潜水
.instance().callbackHandlerFunction=mockFn;
包装纸
.find('可结果')
.props()
.handlerClick();
期望(mockFn)。被催缴的时间(1);});
但是出现了以下错误


谢谢。

@skyboyer你知道答案吗?请告诉我很难说,没有关于
这个功能的信息。callbackHandlerFunction
可以做什么。无论如何,用
instance()…
模拟内部方法绝对是个错误的举动。