Visual Studio Code拡張のjest runnerでenv-cmdの環境変数を読んで単体のテストのみを実行する

Tatsuya Asami
Feb 14, 2021

--

【概要】

  • vscode拡張のjest runnerを使うと、簡単に単独のテストを実行できる。
  • env-cmdで環境変数を設定していると、ちょっとだけ設定しないと思い通りに動かないがので、その設定をする。

【env-cmd】

// package.json"scripts": {
"start": "node src/index.js",
"dev": "env-cmd -f ./config/dev.env nodemon src/index.js",
"test": "env-cmd -f ./config/test.env jest"
},
"jest": {
"testEnvironment": "node"
},
...

こんな感じで環境変数を設定しているファイルがどこにあるかを指定している。コマンドラインで npm run test と実行すれば問題なくjestが実行できる。

何も設定をせずに jest runner から実行すると環境変数を読み込まないのでエラーになってしまう。

17行目でエラー。

ドキュメントに従ってvscodeの settings.json で読み込むscriptを指定する。

{
"jestrunner.jestCommand": "npm run test"
}

これでjest runnerを実行すると、今度はすべてのテストが実行されてしまう。

全部実行される・・・

githubも見てみるとそれっぽい答えがあった。

// settings.json{
"jestrunner.jestCommand": "npm run test --"
}

これでOK

念の為npm scriptも実行。全てのテストが実行される。

--

--

Tatsuya Asami
Tatsuya Asami

Written by Tatsuya Asami

Front end engineer. React, TypeScript, Three.js

No responses yet