したがって、nycは次のようにファイルを変換します。
at _onCreate (src/post/admin.js:1:10453)
at doQuery (src/db.js:59:216)
at process._tickCallback (internal/process/next_tick.js:68:7)
ソースマップを使用してこれを分解する方法がわかりません。ドキュメントの状態:
source-mapsを使用した正確なスタックトレース。
produce-source-mapがtrueに設定されている場合、インストルメントされたソースファイルには、instrumenter変換のインラインソースマップが含まれます。source-map-supportと組み合わせると、インストルメントされたコードのスタックトレースは元の行を反映します。
だから私は次のnpm runコマンドを試しました:
"NODE_ENV=test nyc mocha --require ./tests/setup.js --require source-map-support/register --produce-source-map true --bail ./tests/unit/$FILE"
nyc設定と組み合わせる:
"nyc": {
"include": [
"src"
],
"exclude": [
"./tmp/**/*",
"./tests"
],
"instrument": true,
"report-dir": "./tests/coverage",
"temp-dir": "./tests/temp",
"source-map": true,
"produce-source-map": true
}
しかし、ラインはまだ壊れています。
それが機能するための基本的な前提条件は次のようになります(説明されているように here ):
npm install --save-dev source-map-support
nyc
が^10.3.2
であることを確認してください(10.3.0
が壊れていました)。
"devDependencies": {
...
"mocha": "^3.3.0",
"nyc": "^10.3.2",
"source-map-support": "^0.4.15",
}
nyc
構成は"sourceMap": true, "produce-source-map": true
である必要があります。
そして documentation はそれらの使い方を説明しています:
CLIの使用法
node -r source-map-support/register compiled.js
プログラムによる使用
コンパイルしたファイルの先頭に次の行を置きます。
require('source-map-support').install();
コメントを追加して、マッピングファイル名を定義することもできます。
//# sourceMappingURL=filename.js.map