如何在Jest和Enzyme中模拟 在React中使用

问题描述 投票:1回答:2

我正在导出并要测试的组件:

export default connectToStore(DefaultComponent);

connectToStore wrapper在组件周围:

import React from 'react';
import AppContext from '../components/context/AppContext';

const connectToStore = Component => props => (
  <AppContext.Consumer>
    {({ state }) => (
      <Component {...props} state={state} />
    )}
  </AppContext.Consumer>
);

export default connectToStore;

单元测试调用组件

 it('should render view', () => {
    const wrapper = render(<DefaultComponent />);
    expect(wrapper.html()).toBeTruthy();
  });

我得到的错误:

无法解构'undefined'或'null'的属性state

在导出时,如果组件周围有包装纸,通常如何测试它?如何将状态注入到包装中?

javascript reactjs unit-testing jestjs enzyme
2个回答
0
投票
const wrapper = mount( <AppContext.Provider value={{ data, callbackList: {} }} > <DefaultComponent /> </AppContext.Provider> );

0
投票
© www.soinside.com 2019 - 2024. All rights reserved.