我有一个用Angular CLI创建的项目,其中有一个NgModule
位于/src
文件夹之外(最终这个NgModule
将被打包为npm模块,但现在我只是把它放在了/src
之外)。
我试图为这个NgModule
编写单元测试,但是ng test
似乎没有找到/src
之外的.spec.ts
文件。
我尝试在/src/test.ts
中修改路径:
// Original
const context = require.context('./', true, /\.spec\.ts$/);
// Does not work
const context = require.context('../', true, /\.spec\.ts$/);
// Does not work
const context = require.context('/absolute/path/to/ngmodule', true, /\.spec\.ts$/);
但是我收到了一个错误: 模块构建失败:错误:/绝对路径/to/file.spec.ts不是编译的一部分。请确保它通过“files”或“include”属性在您的tsconfig中。
我还尝试将路径添加到我的NgModule中,在tsconfig.spec.json
的include
属性中:
"include": [
"../my-ng-module/**/*.spec.ts", // Added this
"**/*.spec.ts",
"**/*.d.ts"
]
但是没有成功。 有什么想法吗?
tests.ts
中添加额外的上下文,我在任何地方都没有看到过这方面的文档。非常感谢您的发布。 - Drenairequire.context
中使用变量,因为似乎webpack会解析它而不是解释它?! - mPrinC