如何测试与路由器连接的React组件?

时间:2018-08-16 07:26:40

标签: reactjs react-router jestjs

我有这样的组成部分

const ButtonWithRouter = ({ to, history, ...restProps }) => (
  <Button
    onClick={() => history.push(to)}
    {...restProps}
  />
);
export default withRouter(ButtonWithRouter)

如您所见,

它使用react-router-dom并与Router连接。 我的测试看起来像这样

test('render', () => {
    const component = renderer.create(
    <Router>
      <ButtonWithRouter to='/anywhere'>Anywhere</ButtonWithRouter>
    </Router>
  );
    const tree = component.toJSON();

    expect(tree).toMatchSnapshot();
 });

我认为将真实的路由器导入并使用到我的测试中是不正确的。如何正确做?

0 个答案:

没有答案