问题标签 [karma-coverage]

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 投票
2 回答
1439 浏览

mocha.js - 将来自 karma-coverage 的 istanbul 测试覆盖率与来自其他来源的覆盖率合并

我有几个使用伊斯坦布尔生成覆盖率报告的测试。其中之一是由 karma-coverage 插件生成的。我正在合并这些报告,istanbul reportkarma-coverage报告中的文件不包含在合并的报告中。

具有相同症状的文件路径存在问题,但似乎已修复:https ://github.com/karma-runner/karma-coverage/pull/163

所以它可能是别的东西。

我曾尝试使用 grunt-istanbul 单独检测源文件,然后在捆绑包中浏览它们。我还尝试使用 karma-coverage 插件中的预处理器来检测捆绑包。在这两种情况下 karma-coverage 都会生成看起来不错的报告,但在这两种情况下,这些报告都不包含在合并的报告中。

我在这里做错了什么?也许有一些解决方法?

软件包版本:

业力.conf.js

0 投票
3 回答
1506 浏览

javascript - Karma JS -- 如何包含所有来源?

我有一个 +10K 行 Backbone Marionette 应用程序,我们正在通过 Karma 运行测试和覆盖。

我想包括所有来源,以便我们可以更好地了解我们的测试涵盖的内容。

我一直在通过includeAllSourceskarma 配置中的选项,但我仍然没有看到 karma 显示所有文件的结果(报告仅显示 +3K 行覆盖,或多或少是我们知道我们已经测试过的行数)。

难道我做错了什么?是否有另一种方法来包含所有来源

曾经有一个Karma 插件能够处理此问题,但该插件不再工作(已修改以使其运行,但结果仍然相同)。

有没有办法在--include-all-sources从业力运行时将选项传递给伊斯坦布尔?

0 投票
1 回答
5080 浏览

node.js - 找不到业力覆盖

我正在尝试将业力覆盖率添加到我的应用程序中,但是我不断收到消息“无法加载覆盖率,它未注册!”

但是,我使用“npm install karma-coverage --save-dev”来确保 karma 本地安装在我的 node_modules 文件夹中,它就是这样。

我的缩写文件结构是:

包.json

业力.config.js:

业力不会像其他模块一样自动加载覆盖率是没有意义的,但我决定手动将覆盖率添加到插件中,看看是否能解决问题。

我在框架和文件之间的 karma.config.js 文件中添加了以下代码。

这个改变给了我一个稍微不同的错误,“找不到插件业力覆盖,你忘了安装吗?” 但最终它说的是同样的事情,它找不到覆盖插件。

我在这里想念什么?

0 投票
1 回答
1294 浏览

angularjs - 如何通过 Angular、Karma 和 Webpack 的单独文件拆分代码覆盖率?

如何按单独的文件拆分覆盖范围?现在,捆绑文件一切正常。我正在使用Angular,Webpack进行捆绑和Karma/ Mocha/Chai进行测试。

我有以下 webpack.config:

并遵循 karma.conf.js:

样本测试文件:

0 投票
1 回答
63 浏览

angularjs - 使用 karma-coverage 和 angularjs 对每个源文件进行代码覆盖

我正在尝试为 Angular 项目的单元测试设置代码覆盖率。但是它给了我一些错误。参考https://github.com/angular-class/NG6-starter/issues/58

0 投票
1 回答
902 浏览

javascript - 业力覆盖未能显示正确的结果

我需要一些关于带有 browserify 覆盖范围的 Karma 帮助。我在这里运行的测试创建了一个 repo:

https://github.com/jotaoncode/web-istanbul

我的报道结果如下: 报道结果

测试仅在函数索引上运行。但正如您所见,结果为 100%,并且仅将文件的第一行标记为绿色。

我见过伊斯坦布尔正确显示覆盖率值的情况,我已经更改了测试和源,但什么也没改变。

我也有这个业力配置:

如果您运行测试,您会发现它实际上工作正常,但覆盖率报告不正确。

0 投票
1 回答
4512 浏览

angularjs - if else语句角度js的单元测试

我想对 if else 语句执行单元测试,以便代码覆盖的分支部分给出良好的结果。我不明白应该在下面的代码中测试什么

控制器.js

测试.js

我都试过了,但它还没有覆盖 if-else 分支。谁能指出我在上面的代码中缺少什么。谢谢!

0 投票
1 回答
175 浏览

angularjs - npm -g install karma-cli 给出错误(Karma/AngularJS)

sudo npm install -g karma除了安装所有必要的依赖项/预处理器之外,我还成功运行。

我的业力配置文件可以看到:

};

当我运行时出现问题,sudo npm install -g karma-cli我收到错误:

究竟是什么导致了这个问题?

0 投票
1 回答
1236 浏览

angularjs - Jasmine 中的单元测试用例

我正在尝试为循环中的 if 条件编写一个测试用例,但是我没有将它作为过滤器的一部分。有什么方法可以测试循环中的 if 条件。我的测试用例根本不执行这行代码。

下面是我的控制器代码

下面是我的测试用例

当我运行业力时,我的测试用例失败,Expected '' to be text3.

0 投票
1 回答
1928 浏览

javascript - node.js 伊斯坦布尔和茉莉花设置

我无法让伊斯坦布尔与茉莉花一起工作:

这是我的目录结构

我的 package.json 看起来像这样:

当我从我的 ttm-jira 文件夹运行 npm-test 时,我看到以下内容:

我怎样才能使这项工作?

或者

如果我从我的 ttm-jira 目录运行以下命令:

我收到以下消息:

或者当我这样做时

我得到以下信息: