在WebStorm中运行Mocha的typescript测试

时间:2018-02-13 22:45:14

标签: node.js typescript mocha webstorm

我按照此页面上的说明操作:

Running Mocha tests in Webstorm

在WebStorm中运行Mocha测试,但我的测试是用TypeScript编写的(以.ts格式保存),我想知道如何运行这些测试?这是一个例子:

describe("My Tests", () => {
    it("Test #1", () => {
        let nluConfig: any = {
            "Provider" : "LUIS",
            "Model" : {
                "ID" : "aaa",
                "Secret" : "bbb"
            }
        };
        debugger;
        let result:any = CNluFactory.getNluProvider(nluConfig);
        expect(result).to.be.an.instanceof(CLuis);
    });
});

以下是我目前如何配置WebStorm来运行我的测试:

enter image description here

这是我尝试运行时遇到的错误:

"C:\Program Files\nodejs\node.exe" C:\Repository\Main\node_modules\nyc\bin\nyc.js --reporter=lcovonly --report-dir=C:\Users\User\AppData\Local\Temp\mocha-intellij-coverage- C:\Repository\Main\node_modules\mocha\bin\_mocha --ui bdd --reporter "C:\Program Files\JetBrains\WebStorm 2017.2.1\plugins\NodeJS\js\mocha-intellij\lib\mochaIntellijReporter.js" --recursive C:\Repository\Main\src\test
No test files found

我认为它无法识别我的测试目录中的TS文件?

1 个答案:

答案 0 :(得分:8)

Mocha无法原生运行typescript文件;您需要预先编译它们并将生成的.js文件传递给测试运行器,或者使用ts-node动态编译它们,例如(--compilers ts:ts-node/register或{{1} }):

enter image description here

当然,您需要确保在--require ts-node/register

旁边安装typescriptts-node个模块