我有一个非常简单的单元测试,它从以下几行开始:
import {SOUTH_EVENTS_ENUM, SouthEventsManager} from "@app/common/south_events_manager";
import {expect} from "chai";
import config from "config";
const {KafkaSouth} = require('@app/kafka_conn/kafka_south');
const sinon = require("sinon");
declare const Tester: any;
describe('SouthEventsManager', function() {
const kafkaSouthStub = sinon.createStubInstance(KafkaSouth);
const southEventsManager = new SouthEventsManager(kafkaSouthStub);
字符串
如您所见,模块SouthEventsManager已导入测试文件。
我使用以下运行程序运行Mocha:x1c 0d1x
但是,我得到了错误:
错误:找不到模块“@app/common/south_events_manager”需要堆栈:
- C:\HQNorth\North\test\common\south_events_manager.ts
如您所知,找不到SouthEventsManager模块。
你知道吗?
1条答案
按热度按时间06odsfpq1#
您似乎在
tsconfig.*.json
文件中配置了路径别名。Mocha不知道它,它假设它是某个模块(NodeJS one,相对文件,或只是第三方包)。您需要告诉它。您需要安装包tsconfig-paths
并将Mocha运行脚本更改为:mocha -r ts-node/register -r tsconfig-paths/register "test/**/*.ts"
个