ts-nodeをIDEでデバッグ実行

ts-node は TypeScript ファイルをコンパイルせずにそのまま実行できるライブラリ。
開発環境でお世話になるが、デバッグ実行するやり方の日本語情報がなかったので書いておく。

基本的なこと

node コマンドの option として --inspect をつければデバッグ実行になる。--require をつけることで node_modules のライブラリを読み込むことができる。

$ node --inspect --require ts-node/register src/main.ts
Debugger listening on ws://127.0.0.1:9229/690c42e8-c2d4-407a-b768-6c5270241775
For help, see: https://nodejs.org/en/docs/inspector

これで WebSocket の ws://127.0.0.1:9229 で待ち受けてるので、IDE 等からアタッチすることでデバッギングできる状態になっているというわけ。

ts-node のインストール

$ npm install ts-node -D
$ yarn add ts-node -D

WebStorm でのやり方

実行

--inspect --require ts-node/register して実行する ts ファイルを指定するだけ。 f:id:jnst:20180910162556p:plain

Jest でテスト

--inspect --require ts-node/register して実行するテストファイルを指定するだけ。

f:id:jnst:20180910162618p:plain

結果

f:id:jnst:20180910163534p:plain

VS Code でも同様のやり方でデバッグ実行できる。