我正在尝试使用摩卡进行单元测试。我正在使用打字稿,它通过 tsc 编译为纯 JavaScript。我总是收到错误:
src\index.ts:22
[new FrontendEndpoint(), ...],
^
TypeError: v1_1.default is not a constructor
Run Code Online (Sandbox Code Playgroud)
我采用了两种方法(并两次遇到同样的问题):
首先,我创建了一个虚拟测试test.test.ts,导入一些模块用于测试目的:
import { APIServer } from './../api/index';
import { describe } from 'mocha';
import FrontendEndpoint from '../api/endpoints/frontend/v1';
import { SocketConnector } from '../api/sockets/socketio';
describe('TestTest', () => {
it('should run', (done) => {
const server = new APIServer(4000, [new FrontendEndpoint()], new SocketConnector([]));
done();
});
});
Run Code Online (Sandbox Code Playgroud)
使用 ts-mocha
ts-mocha src/test/test.test.ts使用 mocha 和编译的 ts 文件
mocha build/test/test.test.js两种方法都会产生上述错误。
index.ts …