无法在VSCode中使用TypeScript运行Mocha测试。

问题描述 投票:0回答:1

我的测试文件。

import { expect } from 'chai';

describe('test', () => {
    it('compiles', () => {
        expect(true).is.true;
    });
});

运行这个npm脚本工作。

"test": "mocha -r esm -r ts-node/register test/**/Test*.t.ts"

它应该如何工作的例子。https:/adrianhall.github.ioweb20180704run-typescript-mocha-tests-in-vscode。

在那个例子中,他们在测试文件中也使用了import { . }在测试文件中也使用了,但对我来说,只有当我需要esm的时候才会有效(第一个谜团,但本身不是问题)。

当我在VSCode中运行这个配置时(从例子中),当我 "npm运行测试 "之前,它可以工作,但是当我改变我的测试代码并运行这个时,它在TS类型的冒号处崩溃。没有'-r esm',mocha又在'import {'上崩溃了。

{
    "type": "node",
    "request": "launch",
    "name": "Mocha Tests",
    "program": "${workspaceFolder}/node_modules/mocha/bin/_mocha",
    "args": [
        "--require", "esm",
        "--require", "ts-node/register",
        "--timeout", "999999",
        "--colors", 
        "${workspaceFolder}/test/**/Test*.ts",
    ],
    "internalConsoleOptions": "openOnSessionStart"
}
typescript visual-studio-code mocha
1个回答
0
投票

我让它和ts-mocha一起工作。

包.json脚本

"test": "ts-mocha -r esm -p tsconfig.json test/**/Test*.ts"

启动.json配置

{
    "type": "node",
    "request": "launch",
    "name": "Mocha Tests",
    "runtimeArgs": [
        "${workspaceFolder}/node_modules/ts-mocha/bin/ts-mocha",
        "--timeout", "999999",
        "-r", "esm",
        "-p", "${workspaceFolder}/tsconfig.json", "${workspaceFolder}/test/**/Test*.ts",
    ],
    "console": "integratedTerminal",
    "protocol": "inspector"
}
© www.soinside.com 2019 - 2024. All rights reserved.