ค้นหาเว็บไซต์

node.js - Mocha Unit Test Framework + TypeScript + ECMAScript Modules=` [ERR_UNKNOWN_FILE_EXTENSION]: นามสกุลไฟล์ไม่รู้จัก ".ts"`


ง่ายมาก ฉันมี test/simple.ts:

import assert from 'assert';
import {it} from "node:test";

it('sample typescript test', () => {
    assert.equal(1 + 1, 2);
});

ฉันมี .mocharc.json ตอนนี้โปรเจกต์ของฉันกำลังใช้โมดูล ECMAScript และ import; การใช้ require เป็นตัวเลือกที่ถูกต้องหรือไม่?

{
  "extension": ["ts"],
  "require": "ts-node/register"
}

เมื่อฉันรัน yarn run mocha ฉันได้รับ Exception during run: TypeError [ERR_UNKNOWN_FILE_EXTENSION]: Unknown file extension ".ts" for /path/mocha-test/test/simple.ts

สำหรับคุณทราบ, ฉันกำลังใช้ NodeJS 20.x เวอร์ชันล่าสุดกับ package.json ดังต่อไปนี้:

{
  "type": "module",
  "packageManager": "[email ",
  "dependencies": {
    "@types/node": "^20.14.2",
    "ts-node": "^10.9.2",
    "typescript": "^5.4.5"
  },
  "devDependencies": {
    "@types/mocha": "^10.0.6",
    "mocha": "^10.4.0"
  }
}