3

我们最近开始使用 angular-cli beta 18。根据文档中给出的方向,我们进行了更改以运行我们的测试。截至目前,下面是我们的目录结构

root
-coverage
-src
--app
---component
----mycomp.ts
----mycomp.spec.ts
---lib
----angular
----rxjs
--index.html
--test.ts
--tsconfig.json
-karma.conf.js
-package.json

正如 angular-cli 文档中所建议的,我们使用 test.ts 来包含所有测试。上下文设置行是

.then(()=> require.context('./../src', true, /\.spec\.ts/))

这可以很好地运行我们的测试,并通过在 karma.config 中添加以下行来生成代码覆盖率。

preprocessors: {
'./src/test.ts': ['angular-cli']
            , 'src/app/!(lib|shared|styles)/**/!(*spec).ts': 'coverage'
        },

但是,由于某种原因,它也包括 lib/rxjs 文件夹的覆盖范围。我在上述配置中尝试了各种组合,但在排除该 lib 文件夹方面没有任何成功。

任何帮助表示赞赏。

更多信息 - 我只使用 karma-coverage 而不是 karma-remap-Istanbul。

4

0 回答 0