首页 文章

对redux的JEST测试没有按预期工作

提问于
浏览
0

我在redux中有一个代码,我导出为

export default connect(mapStateToLinkProps, mapDispatchToLinkProps)(Link);

在jest测试用例中,我编写了测试此导出组件的文章

//imported the above component as Link
describe('Dashboard component testing', () => {
  test('1. Must be an Instance of CreateAssest', () => {
    const wrapper = shallow(<FilterLink />);
    const inst = wrapper.instance();
    expect(inst).toBeInstanceOf(Link);
  });
});

为此,我得到了错误

不变违规:无法在“连接(链接)”的上下文或道具中找到“存储” . 将根组件包装在a中,或者将“store”显式传递为“Connect(Link)”的prop .

当不使用redux并仅作为反应组件导出时,测试用例正在工作 . 现在在redux中一些商店问题即将到来 . 请问任何人都可以在这个问题上引导一些正在发生的事情

1 回答

  • 1

    您需要将您的组件包装在Provider中才能使用store,如下所示:

    import { Provider, connect } from "react-redux";
    let store = createStore(reducer, defaultStoreItems); 
    <Provider store={store}>  
      <App />    
    </Provider>
    

相关问题