将摩卡咖啡与打字稿路径一起使用



我在使用paths baseurl配置中的typescript

中使用摩卡咖啡有问题

我的tsconfig.js设置为:

"baseUrl": "./src/", /* Base directory to resolve non-absolute module names. */
"paths": {
  "interfaces/*": [
    "interfaces/*"
  ],
  "models/*": [
    "models/*"
  ],
  "schemas/*": [
    "schemas/*"
  ],
  "classes/*": [
    "classes/*"
  ],
  "libs/*": [
    "libs/*"
  ],
  "config/*": [
    "config/*"
  ]

,我是摩卡咖啡的"摩卡式构建/测试"

编译的TS代码无法找到我的参考文献,因为它将其编译为

var user_1 = require("interfaces/user");

,如果我事先添加" ../",它将在没有问题的情况下进行编译

有什么想法在这里我做错了什么?

您可以使用tsconfig-paths,请按照Tsconfig-Paths上的说明:

mocha -r ts-node/register -r tsconfig-paths/register "test/**/*.ts"

您应该使用Mocha-typecript集成软件包,例如TS-Mocha

您应该使用普通测试集成程序包(最流行的一个)。例如摩克型。因此,您只需要在package.json

中进行测试中设置
script: 'mocha --ui mocha-typescript test.ts'

https://www.npmjs.com/package/mocha-typescript

我会给你一个更好的例子-Test.ts

import { suite, test, slow, timeout } from "mocha-typescript";
@suite class Hello {
    @test world() {
        assert.equal(1, 2, "Expected one to equal two.");
    }
}

如果您使用的是ts-mocha,则使用引擎盖下的tsconfig-paths软件包来解决TSCONFIG路径,但必须启用它:TS_CONFIG_PATHS=true

请参阅此处的官方文档:https://github.com/piotrwitek/ts-mocha#-- programmatic-usage

最新更新