无法 运行 Mocha 在 VSCode 中使用 TypeScript 进行测试
Can't run Mocha tests with TypeScript in VSCode
我的测试文件:
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.io/web/2018/07/04/run-typescript-mocha-tests-in-vscode/
在那个例子中,他们也在测试文件中使用了 import { .. } ,但对我来说,只有在我需要 esm 时才有效(第一个谜,但本身不是问题)。
当我 运行 VSCode 中的这个配置(来自示例)它在我 'npm run test' 之前有效,但是当我更改我的测试代码和 运行nning它在 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"
}
我让它与 ts-mocha 一起工作。
package.json 脚本
"test": "ts-mocha -r esm -p tsconfig.json test/**/Test*.ts"
launch.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"
}
我的测试文件:
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.io/web/2018/07/04/run-typescript-mocha-tests-in-vscode/
在那个例子中,他们也在测试文件中使用了 import { .. } ,但对我来说,只有在我需要 esm 时才有效(第一个谜,但本身不是问题)。
当我 运行 VSCode 中的这个配置(来自示例)它在我 'npm run test' 之前有效,但是当我更改我的测试代码和 运行nning它在 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"
}
我让它与 ts-mocha 一起工作。
package.json 脚本
"test": "ts-mocha -r esm -p tsconfig.json test/**/Test*.ts"
launch.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"
}