问题标签 [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.
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 也有这个设置:
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”
因为这条路很奇怪。现在我希望我可以做相对路径来解决这个问题......但由于它的构建方式,它是不可能的。
我无法绕开它,并且肯定在弄清楚这一点时遇到了一些麻烦。
提前感谢您提供的任何建议!
phantomjs - 我认为 Karma 正在运行两次测试
我正在尝试使用业力(在 PhantomJS2 上)、茉莉花和酶来测试我的反应应用程序。我注意到我的一些测试失败了。似乎是因为每个 it 块都被调用了两次(我已经通过在我的所有 it 块中放置打印件来确认这一点,并且它们都打印了两次)。我已经查找了解决方案,但似乎没有一个有效。我将包括尽可能多的细节。
这是我的 karma.config 文件:
我也尝试过这些,但结果与上述相同:
我也试过这个,但这导致业力中断:
这是我的一个运行两次的 it 块的示例(尽管如果运行它会通过,但长度关闭会导致其他测试失败,我已将其注释掉):
这是fillArray,甚至认为它被调用了两次。在我的示例中,它不应该两次返回大小为 5 的数组吗?为什么是10?:
这是我认为相关的图片(粘贴在一起):
typescript - Karma、Webpack、Babel 奇怪的导入行为
问题:
当我第一次导入模块时,导出的函数是未定义的。在异常情况下,模块被定义。
为什么它未定义!?!?
设想:
主文件
如您所见,此函数中有一些控制台日志。上的输出karma start
是:
用户类.ts:
** 配置文件:**
业力.conf.js
网络包配置:
因此,正如您所看到的,UserClass
在开始时未定义的日志记录,并且当在 Promise 中引发异常时,该类将变为已定义。
我有一种感觉,由于某种原因,它在导出之前执行代码UserClass
,这导致它在那一刻未定义。
那个或我的配置文件完全损坏了。
javascript - 使用 ES6 和 let/const 与 export / import 和 Karma/webpack - 在顶部导出
我想,由于提升,test-function 是未定义的。因为如果我这样做:
测试有效。
但是,我想将我的导出保留在文件顶部以便于参考。
有什么方法可以实现吗?
我的 karma.conf.js:
以及 package.json 的相关部分:
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
webpack - Webpack 别名在 Karma-webpack 中不起作用
我收到一个错误,因为业力无法找到从 webpack 别名加载的模块(特别是 scss 和图像)。
Webpack devserver 和 build 能够找到这些并且工作得很好。Karma 可以毫无问题地加载其他所有内容,它只是别名文件。
我已经查看了与此相关的所有内容,我可以在这个网站和谷歌上找到,但我还没有想出一个修复方法。
如果可以解决问题,我愿意使用另一个插件来使用 webpack 和 karma 来整理别名。
谢谢!
reactjs - reactjs / Webpack 3 - 如何将scss编译成单独的css文件?
如何将 .scss 转换为 .css 文件,同时将它们复制(CopyWebpackPlugin(){})到 dist/ 文件夹,但我无法弄清楚。
使用 copy-webpack-plugin 版本 --- 4.0.1
我的包结构就是这样,我试图将我的 *.scss 文件复制到 *.css 并且我需要在其中转换一个文件。
等等...
我的 webpack.config 看起来像..
webpack.config.js
我做错了什么,请建议我如何实现?
angular - angular-cli - 使用多个 karma.conf.js
我正在使用 angular-cli,我想使用两个 karma.conf.js 文件进行测试。
对于 CI:我正在使用 Headless Chrome
自定义启动器:{
对于开发人员:我正在使用 Chrome。
有什么方法可以根据参数值在两个 karma.conf.js 之间切换。
webpack - 使用 vue-cli 初始化项目后如何添加 Karma+Mocha 测试
嗨,我使用 Vue-cli webpack 开始了一个项目,我犯的错误是我没有启用测试
如何将 karma+mocha 添加到我的 webpack vuejs2 开发中是否可以重新初始化并包含测试?