如何将URL注入反应组件的jest +酶单元测试?

时间:2017-07-12 15:02:50

标签: unit-testing reactjs jestjs enzyme react-router-v4

我试图使用jest +酶为反应成分创建单元测试:

it('renders the problem view without crashing', () => {
  // TODO: tell the test fixure that the current URL is /problems
  const wrapper = shallow(<App />);
  // ... check that the problem view is actually rendered...
});

根据URL(后缀),App组件应呈现不同的页面(使用react-router v4)。 我不知道如何将URL注入测试夹具:

  • 我必须将此注入jsdom吗?如果是,怎么样?
  • 还有另一个吗? 实现这个目标的方法?

非常感谢任何指向正确方向的指示!

编辑1:这篇文章(How to test react-router with enzyme)的答案建议编写一种白盒单元测试,其中检索Router对象及其URL-&gt;组件检查映射表的正确性。 但是,我想编写一个黑盒单元测试:给定正确的环境(即URL),被测组件应该呈现正确的东西,而不管使用哪个客户端路由库。

编辑2: Jest配置参数testURL看起来几乎就像我需要的那样,但似乎无法在测试中设置它。来自this question的答案提供了一些提示,但我没有找到任何关于在测试中将自定义jsdom对象注入Jest官方Jest文档中的任何内容。

0 个答案:

没有答案