Jest 22: 機能改善とカスタムランナー
このページは PageTurner AI で翻訳されました(ベータ版)。プロジェクト公式の承認はありません。 エラーを見つけましたか? 問題を報告 →
本日、Jestの新たなメジャーバージョンを発表します。このリリースではJestのほぼすべての部分を改良し、より堅牢なテスト基盤を提供します。Jestコミュニティと協力して多岐にわたる変更を加え、皆様がJestからより多くの価値を引き出せるようにしました。また、 カスタムランナー機能を実験段階から正式リリースへ移行するとともに、複数プロセス間での作業並列化を可能にする新パッケージjest-workerを追加しました。主要なハイライトを以下にまとめましたが、変更履歴(いつもながら膨大です)も必ずご確認ください。
Node 4 のサポート終了、JSDOM 11 へようこそ
今回のリリースでNode 4のサポートを終了します。主な理由は主要依存ライブラリであるJSDOMがサポートを終了したためです。Jestは今後JSDOM 11を標準搭載し、SVGのサポート改善、組み込みのrequestAnimationFrame、URLおよびURLSearchParams、その他多くの機能を提供します。
カスタムランナー + jest-workerによる簡単な並列化
Jest 21でカスタムJestランナーのコンセプトを導入しました。それ以来、Jest コアコントリビューターのRogelioがいくつかの有用なランナーを開発しています:他のフレームワークで書かれた既存テストが多いものの、Jestの機能を即座に活用したい場合は、jest-runner-mochaを確認してください。大規模なコードベースのリンターが必要な場合、Jest内でjest-runner-eslintを使用してeslintを実行すると、大幅な速度向上が得られる可能性があります。
重いタスクの並列化(ファイル変換やファイルシステムクロールなど)をきめ細かく制御するため、この目的に最適な新ライブラリを設計しました。jest-workerという名前のモダンなPromiseベースのモジュールで、親しみやすいAPIを備えており、負荷の高い関数を子プロセスに委任できます。jest-workerは他のJestパッケージと同様にJestプラットフォームの一部であるため、Jest自体を使用しなくても自由に活用できます。詳細はドキュメントでご確認いただけます。
カスタムランナーとプラットフォームとしてのJestについて理解を深めたい方は、Reactive Conf 2017でのRogelioの講演Jest as a Platformをご覧ください。
