3
1

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 3 years have passed since last update.

JavaScriptテスティングフレームワークのJestとは

Posted at

#プログラミング勉強日記
2020年10月25日
Babel、Typescript、Node、React、Angularなどで使えるテストの存在を知ったのでまとめる。

#Jestとは
 FaceBook社がOSSとして開発しているJavaScriptのユニットテストのためのツール。公式のドキュメントはこちらで日本語のドキュメントもある。
 特別な設定をすることなく、他のライブラリを追加することなく、誰でもすぐにユニットテストを書けるのが特徴。

#特徴
 公式ドキュメントにあるようにJestの特徴は以下のようになる。

  • zero config
  • snapshots
  • isolated
  • great api
  • fast and safe
  • code coverage
  • easy mocking
  • great exceptions

##zero config
 上でも述べているが、JestはJavaScriptプロジェクトにおいて細かい設定が不要なので、すぐにユニットテストを書くことができる。

##snapshots
 テストと一緒にインラインに埋め込んだ状態で表示できるスナップショット機能で大きなオブジェクトを容易に追跡できるテストを作成できる。

##isolated(独立的)
 パフォーマンスを最大化するために、別々のプロセスで実行してテストを並列化する。

##great api
 itからexpectまで、Jestにはすべてのツールキットが1つにまとまっている。ドキュメント化されてメンテナンスもできている。

##fast and safe
 テストが一意なグローバル状態であり、Jestは安全にテストを並列実行することができる。また、開発効率を上げるために前に失敗したテストから実行して、テストファイルの所要時間に基づいて再整理する。

##code coverage
 フラグの--coverageを指定することで、追加の設定なしでコードガバレッジを生成する。Jestは最後のテストのファイルを含むプロジェクト全体からコードガバレッジ情報を収集できる。

##easy mocking
 Jestはテストにおけるインポートに独自のリゾルバを使用することで、テストコード外のオブジェクトを簡単にモックできる。豊富なモック機能APIでモックされたインポートを利用して、読みやすいテスト構文で関数呼び出しをできる。

##great exceptions
 テストが失敗したときの理由をわかりやすく表示する。

#参考文献
第1回 環境の準備とテストの実行
公式ドキュメント

3
1
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
3
1

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?