繁体   English   中英

如何在打字稿角应用程序中获得100%的业力分支代码覆盖率?

[英]How to get 100% of karma branch code coverage in typescript angular app?

我用karma和jasmin单元测试来编写我的角度应用程序。 我在打字稿中得到了代码:

module app {
  ...
}

生成的javascript如:

var app;
(function (app) {
...
})(app || (app = {}));

现在,当我运行karma-coverage时,它会向我显示跳过一个分支,它是|| (app = {})) ; 这个。 当我测试更多获得app模块的文件时会发生这种情况。

如何在茉莉花中测试它,获得100%的分支覆盖率?

如果你有一个使用gulp或grunt的构建过程,在你的打字稿被编译成javascript之后,你可以告诉伊斯坦布尔(karma-coverage使用什么来生成代码覆盖)来忽略某些行(比如那些讨厌的打字稿生成的行)。

您可以通过使用/* istanbul ignore next */ comment告诉伊斯坦布尔忽略一行

(function (app) {
...
})(/* istanbul ignore next */app || (app = {}));

这是一篇文章解释如何使用gulp做到这一点。

https://stackoverflow.com/a/33024388/1633757

在使用源remap-istanbul编译时, remap-istanbul软件包应该能够将伊斯坦布尔覆盖报告转换为原始打字稿。

您可以查看Typescript的代码覆盖率

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM