在Jest测试中访问引导功能

时间:2017-07-20 21:10:19

标签: jquery twitter-bootstrap reactjs jestjs enzyme

所以我正在使用Jest& amp;来测试我的React组件。酶,当我测试打开引导模式的组件时,我收到以下错误:

TypeError: $(...).modal is not a function

有道理,我还没有引用bootstrap,所以我继续将以下内容添加到我的package.json中的jest对象中:

"setupFiles": [
  "./app/common/js/jquery-3.1.1.min.js",
  "./app/common/js/bootstrap.min.js",
  "./__mocks__/beforeTest.js"
 ]

然后给我这个错误:

Bootstrap's JavaScript requires jQuery. jQuery must be included before Bootstrap's JavaScript.

我已将window.$global.$设置为jQuery以查看这是否有助于我的问题,但它似乎也没有帮助,也没有将导引模块导入我的{{1文件。

我不需要测试模态的功能,我只需要将错误消失。所以我希望找到一种加载引导程序的方法,这样我就可以运行beforeTest.js。 bootstrap甚至可以在这种环境下工作吗?

1 个答案:

答案 0 :(得分:0)

这对我有帮助:

$.fn.modal = jest.fn();

该模拟还将避免将Bootstrap包含在测试套件中。