Mocha无法在Windows上编译Typescript代码

时间:2016-12-31 16:18:01

标签: node.js typescript mocha

对于我的nodejs模块,我使用Mocha和Chai编写了一些单元测试。它们在macOS上运行正常,但无法在Windows上编译,编译错误:

D:\projects\antlr4-graps>npm test

> antlr4-graps@1.2.0 test D:\projects\antlr4-graps
> mocha --compilers ts:ts-node/register,tsx:ts-node/register


D:\projects\antlr4-graps\node_modules\ts-node\src\index.ts:312
          throw new TSError(formatDiagnostics(diagnosticList, cwd, ts, lineOffset))
                ^
TSError: ⨯ Unable to compile TypeScript
test\test.ts (17,1): Cannot find name 'describe'. (2304)

无法编译的代码是:

describe('antlr4-graps', function () {

这是完全有效的代码(the full version of that file is on Github)。我仔细检查了mocha和chai是否作为本地节点模块安装,包括它们的TS等价物(@type / chai和@type / mocha)。

如何修复编辑?

1 个答案:

答案 0 :(得分:1)

您必须在测试文件中导入Mocha。我已经复制了一个项目,其中包含了您所安装内容的描述,我只需要添加:

import "mocha";

在测试文件的开头,以便describe及其兄弟姐妹在全局空间中定义。