我正在使用Angular 7,并使用Karma / Jasmine测试我的代码。我的Angular项目之外有一个模块,我想使用Jasmine进行测试。我像这样制作了一个测试文件:
describe('Server Config', () => {
const CONFIG_PATH: string = '../../../config/config.js';
beforeEach(() => {
delete require.cache[require.resolve(CONFIG_PATH)];
});
it('should test something', () => {
const config = require(CONFIG_PATH);
expect(config.test).toBe('test');
});
});
我的文件夹结构:
config
- config.js
tests
unit
server
config.spec.ts
运行此命令时,出现以下错误:
Error: Cannot find module '../../../config/config.js'
error properties: Object({ code: 'MODULE_NOT_FOUND' })
这对我没有意义。我的config.js文件中包含以下行:module.exports = config;
。我无法将其更改为export default config
,因为它会导致其他区域出现错误。
我尝试使用path
模块创建config.js的字符串,但出现相同的错误。
我在做什么错?我如何在测试文件中需要自定义模块?