unit-testing - 如何从CDN注入(inject)外部JS到Jest单元测试?

标签 unit-testing reactjs npm jestjs

我有 npm 和 webpack 的 react 应用程序。我正在尝试向其添加单元测试。

我使用的是来自 CDN 的 jQuery(包含在我的 index.html 中),而不是使用节点模块。

我在组件 Test1 中使用 jQuery,并向其中添加了单元测试用例。

现在,当我执行测试用例时,我收到错误消息 引用错误:$ 未定义 我知道 Jest 无法解决它,因为我没有在组件中导入 jQuery import。

问题是,如何让Jest了解外部JS?

最佳答案

我们可以利用“setupFiles”configuration允许 Jest 在开始执行测试之前执行所需的所有脚本/库/模块。

创建一个文件并将其添加到“setupFiles”:[“path/to/setup.js”],并将您的库包含在其中。

例如, global.jQuery = global.$ = require('path/to/jQuery')

请找到我的query发布在 Jest github 存储库上。

关于unit-testing - 如何从CDN注入(inject)外部JS到Jest单元测试?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/40382161/

相关文章:

spring - 如何使用 Spring 4 和注释编写单元测试来验证异步行为?

c# - 如何编写单元测试以确定对象是否可以被垃圾回收?

javascript - 如何防止 Redux 转换不可变数据(使用 Transit.fromJSON 时)?

javascript - spread 元素在这里起什么作用

unit-testing - 单元测试比仅测试整个应用程序的整个输出有何优势?

javascript - 以编程方式单击 AngularJS 指令中单元测试中的 <A>

javascript - 使用 Object.assign 替换状态

node.js - Maven/Spring 与 Browserify : require is not defined

Angular CLI 停止工作 - 意外 token {

javascript - 安装 gulp 和 pdf.js 时出现问题