ジェストの基本的な使い方
Jestをインストールして実行します
Jestは、開発用にnpmを介してインストールできます。
# 指定安装 jest v23.6,不添加 @23.6.0 会安装最新版本
$ npm install --save-dev [email protected]
ここで使用されていることに注意してください--save-dev
。つまり、依存関係パッケージは開発環境でのみダウンロードされ、更新する必要がありpackage.json
ます。devDependencies
{
// 省略其他
"devDependencies": {
"jest": "^23.6.0"
}
}
依存関係が正常にインストールされると、を使用してテストファイルnpx jest
をます。
テストファイルがない場合は、エラーが報告されます。
npmを使用してファイルJestを直接実行するには、次の設定package.json
が。
{
// 省略其他
"scripts": {
"test": "jest"
}
}
最初のテストファイルを書き込む
Jestが認識するファイル形式は次文件名.test.js
のとおりですhelloWorld.test.js
。
const greeting = () => 'hello world';
describe('greeting()', () => {
it('greeting', () => {
expect(greeting()).toBe('hello world');
});
});
の:
describe()
これがテスト凹面、一連のテストであることを宣言しますit()
テストを宣言しますassertion
アサーションを作成しましたtoBe()
戻り値がアサーションと等しいかどうかを判断することです
演算結果:
$ npm test
...
PASS ./greeting.test.js
greeting()
✓ greeting (3ms)
Test Suites: 1 passed, 1 total
Tests: 1 passed, 1 total
Snapshots: 0 total
Time: 0.83s
Ran all test suites.
テストとテストカバレッジを自動的に実行する
実行中のテストはフラグ--watchAll
として。
# 加上关键字全局搜索
$ npx jest --watchAll
この時点で、npmは実装ファイルとテストファイルを含むすべてのファイル変更を監視し、テストを再実行します。
テストカバレッジを有効にするには、次のような--coverage
フラグ。
$ npm run test -- --coverage --coverageReporters=text
PASS ./index.test.js
greeting()
✓ returns "greeting" for greeting (3ms)
----------|----------|----------|----------|----------|-------------------|
File | % Stmts | % Branch | % Funcs | % Lines | Uncovered Line #s |
----------|----------|----------|----------|----------|-------------------|
All files | 75 | 50 | 100 | 66.67 | |
index.js | 75 | 50 | 100 | 66.67 | 3 |
----------|----------|----------|----------|----------|-------------------|
Test Suites: 1 passed, 1 total
Tests: 1 passed, 1 total
Snapshots: 0 total
Time: 0.121s, estimated 1s
Ran all test suites.
複数のテストを実行する
スコープに複数の宣言を追加するdescribe()
だけです。it()
const greeting = () => 'hello world';
describe('greeting()', () => {
it('greeting', () => {
expect(greeting()).toBe('hello world');
});
});