问题标签 [karma-webpack]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
1832 浏览

webpack - Karma 忽略了 mime 设置并且 Chrome 中的测试失败

尝试运行单元测试时出现以下错误。

拒绝从“ http://localhost:9876/base/tests/test.ts ”执行脚本,因为它的 MIME 类型(“video/mp2t”)不可执行。

问题是 karma 正在为 test.ts 提供服务,Content-Type:video/mp2t而 Chrome v55+ 拒绝执行脚本。

我将 karma.conf.js 中的 mime 属性设置为:

运行测试时,Karma 不使用这两种 mime 类型。在此处设置后,有什么可能会更改 mime 设置吗?

业力.conf.js

我的 webpack.config 也有这个设置:

0 投票
0 回答
256 浏览

unit-testing - Karma、Webpack、磁带和绝对路径问题

这是一个有趣的情况。

谜底是这样的:组件的名字是 TODO

控制器.js

查看.js

我正在使用 Karma、webpack 和磁带来测试组件。我没有将所有功能都放在视图和组件中,因为这个问题没有必要。然而,问题既简单又复杂:您如何处理应用程序中的绝对路径限制以进行单元测试

所以例子:

它将返回这种类型的错误:

./components/todo/tests/todo_spec.js 中的错误

找不到模块:错误:无法解析 /Users/username/Documents/projects/app-folder/components/todo/tests 中的模块“app-folder/components/todo/controller”

因为这条路很奇怪。现在我希望我可以做相对路径来解决这个问题......但由于它的构建方式,它是不可能的。

我无法绕开它,并且肯定在弄清楚这一点时遇到了一些麻烦。

提前感谢您提供的任何建议!

0 投票
0 回答
314 浏览

phantomjs - 我认为 Karma 正在运行两次测试

我正在尝试使用业力(在 PhantomJS2 上)、茉莉花和酶来测试我的反应应用程序。我注意到我的一些测试失败了。似乎是因为每个 it 块都被调用了两次(我已经通过在我的所有 it 块中放置打印件来确认这一点,并且它们都打印了两次)。我已经查找了解决方案,但似乎没有一个有效。我将包括尽可能多的细节。

这是我的 karma.config 文件:

我也尝试过这些,但结果与上述相同:

我也试过这个,但这导致业力中断:

这是我的一个运行两次的 it 块的示例(尽管如果运行它会通过,但长度关闭会导致其他测试失败,我已将其注释掉):

这是fillArray,甚至认为它被调用了两次。在我的示例中,它不应该两次返回大小为 5 的数组吗?为什么是10?:

这是我认为相关的图片(粘贴在一起):

在此处输入图像描述

0 投票
1 回答
30 浏览

typescript - Karma、Webpack、Babel 奇怪的导入行为

问题:

当我第一次导入模块时,导出的函数是未定义的。在异常情况下,模块被定义。

为什么它未定义!?!?


设想:

主文件

如您所见,此函数中有一些控制台日志。上的输出karma start是:

用户类.ts:


** 配置文件:**

业力.conf.js

网络包配置:


因此,正如您所看到的,UserClass在开始时未定义的日志记录,并且当在 Promise 中引发异常时,该类将变为已定义。

我有一种感觉,由于某种原因,它在导出之前执行代码UserClass,这导致它在那一刻未定义。

那个或我的配置文件完全损坏了。

0 投票
1 回答
904 浏览

javascript - 使用 ES6 和 let/const 与 export / import 和 Karma/webpack - 在顶部导出

我想,由于提升,test-function 是未定义的。因为如果我这样做:

测试有效。

但是,我想将我的导出保留在文件顶部以便于参考。

有什么方法可以实现吗?

我的 karma.conf.js:

以及 package.json 的相关部分:

0 投票
1 回答
3248 浏览

angular - Angular TestBed 因 Webpack、Karma/Jasmine 而失败

我尝试使用 Angular.io 网站上描述的 Angular TestBed 来测试一个简单的组件,但我收到如下错误:TypeError: undefined is not an object (evaluating 'ProxyZoneSpec.assertPresent')和 404,因为它无法加载外部组件模板。

如果我创建一个示例单元测试,而不使用/设置 TestBed,它可以正常工作,因此至少为项目正确设置了 Karma 和 Jasmine。该问题与 Angular TestBed 有关。除了 angular.io 还有其他文档吗?按照这些文档,它似乎不起作用。

业力.conf.js

组件.ts

组件.spec.ts

0 投票
1 回答
1056 浏览

webpack - Webpack 别名在 Karma-webpack 中不起作用

我收到一个错误,因为业力无法找到从 webpack 别名加载的模块(特别是 scss 和图像)。

Webpack devserver 和 build 能够找到这些并且工作得很好。Karma 可以毫无问题地加载其他所有内容,它只是别名文件。

我已经查看了与此相关的所有内容,我可以在这个网站和谷歌上找到,但我还没有想出一个修复方法。

如果可以解决问题,我愿意使用另一个插件来使用 webpack 和 karma 来整理别名。

谢谢!

0 投票
0 回答
355 浏览

reactjs - reactjs / Webpack 3 - 如何将scss编译成单独的css文件?

如何将 .scss 转换为 .css 文件,同时将它们复制(CopyWebpackPlugin(){})到 dist/ 文件夹,但我无法弄清楚。

使用 copy-webpack-plugin 版本 --- 4.0.1

我的包结构就是这样,我试图将我的 *.scss 文件复制到 *.css 并且我需要在其中转换一个文件。

等等...

我的 webpack.config 看起来像..

webpack.config.js

我做错了什么,请建议我如何实现?

0 投票
3 回答
5353 浏览

angular - angular-cli - 使用多个 karma.conf.js

我正在使用 angular-cli,我想使用两个 karma.conf.js 文件进行测试。

  1. 对于 CI:我正在使用 Headless Chrome

    自定义启动器:{

  2. 对于开发人员:我正在使用 Chrome。

有什么方法可以根据参数值在两个 karma.conf.js 之间切换。

0 投票
1 回答
772 浏览

webpack - 使用 vue-cli 初始化项目后如何添加 Karma+Mocha 测试

嗨,我使用 Vue-cli webpack 开始了一个项目,我犯的错误是我没有启用测试

如何将 karma+mocha 添加到我的 webpack vuejs2 开发中是否可以重新初始化并包含测试?