min*_*rse 6 typescript karma-runner angular
我正在使用带有Karma的angular-cli,我需要在运行单元测试时排除特定文件的编译.
有问题的文件在下面的错误中被引用,由于模块不存在而无法编译它所依赖的文件.
该文件由模块将出现的其他项目使用,因此编译正常,它只是在这个特定项目中它不需要编译但仍需要导出.
我的目录结构如下:
index.ts
- /src
- /testing
Run Code Online (Sandbox Code Playgroud)
在我的index.ts文件中,我有一个导出:
export * from './src/core';
Run Code Online (Sandbox Code Playgroud)
我的testing文件夹下的TS源文件被编译器拾取,我不确定为什么因为我没有在我的src文件夹下的文件或其他任何地方导入该文件夹下的任何文件.
我想阻止编译器完全拿起我的测试文件夹,但我不能让它忽略它.
我正在使用angular-cli,在我的.angular-cli.json文件中我有这些行:
"tsconfig": "tsconfig.json",
"testTsconfig": "tsconfig.spec.json"
Run Code Online (Sandbox Code Playgroud)
这两个文件都位于我的src文件夹下,我尝试将一些排除模式添加到我的tsconfig.spec.json中,如下所示:
"exclude": [
"../testing",
"testing"
]
Run Code Online (Sandbox Code Playgroud)
但这没有任何区别.
然后我想知道业力是否肯定使用我的tsconfig.spec.json文件,所以我添加了以下内容:
karmaTypescriptConfig : {
tsconfig: '.src/tsconfig.spec.json',
}
Run Code Online (Sandbox Code Playgroud)
但同样,仍然没有区别,我的测试文件夹在准备运行我的测试时被编译器拾取.
我不确定还有什么可以尝试,我已经将我的TypeScript(3.1.6)和Karma(3.1.1)版本更新到最新版本.
有没有人对这里可能发生的事情有任何想法?
谢谢
也许你的路径不够精确。我们可以得到你的项目伪树视图吗?尤其是您要排除的文件的路径?
配置文件可能会是这样的:
"exclude": [
"someFolder/**/o3-test-harness.class.ts"
]
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
1325 次 |
| 最近记录: |