🦔
Jestを勉強しようとする
こんにちは。ファガイです。
JavaScriptのテスティングフレームワークであるJestをやってみるかーってなったときに試したことです。
なにはともあれチュートリアルを見る
$ yarn add -D jest
sum.jsを作ります。
sum.js
const sum = (a, b) => a + b;
module.exports = sum;
sum.test.jsを作ります。
sum.test.js
const sum = require('./sum');
test('adds 1 + 2 to equal 3', () => {
expect(sum(1, 2)).toBe(3);
});
package.jsonに動かすためのスクリプトを書く
package.json
"scripts": {
"test": "jest"
}
実行してみる
$ yarn test
yarn run v1.22.10
$ jest
PASS ./sum.test.js
√ adds 1 + 2 to equal 3 (2 ms)
Test Suites: 1 passed, 1 total
Tests: 1 passed, 1 total
Snapshots: 0 total
Time: 1.412 s
Ran all test suites.
Done in 2.21s.
VS Codeでサジェストされない
npx jest init
しても、jestの関数がVS Codeでサジェストされなかったので調べました。
どうやら2つのステップが必要なようです。
1. jestのTypeScriptの型定義ファイルを入れる
実際に利用するのがtsじゃなくても、これが必要みたいです。
$ yarn add -D @types/jest
2. jsconfig.json(tsconfig.json)を作成し、型取得するものを指定する
TypeScriptで開発をしようとした場合は、このファイルはすでにありそうです。
まっさらな状況で試そうとしたので、このファイルを作る必要がありました。
jsconfig.json
{
"typeAcquisition": {
"include": [
"jest"
]
}
}
あとはVS Codeの再起動を行うことでサジェストがされるようになってくれました。
Discussion