开玩笑测试回调

时间:2020-03-21 08:14:58

标签: reactjs jestjs

当子组件的回调返回父组件时,我想测试回调。 在父SearchResult2组件处声明如下,以调用ResultTable子组件:

SearchResult2.js

return (            
      <ResultTable
        handlerClick={result => this.callbackHandlerFunction(result)}
        searchResultData={listAddRessSearch}
        saveFilterSearchResultByRightTable={
          this.props.saveFilterSearchResultByRightTable
        }
      />
)

SearchResult2包含子ResultTable。 我只想测试它以测试回调 handlerClick = {result => this.callbackHandlerFunction(结果)}

所以我咨询了stackoverflow并尝试编写UT代码 链接:How test callback click in child component that was passed from parent component?

在这里,我使用Jest进行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);});

但是出现以下错误

error

谢谢。

0 个答案:

没有答案