SHOEISHA iD

※旧SEメンバーシップ会員の方は、同じ登録情報(メールアドレス&パスワード)でログインいただけます

CodeZine編集部では、現場で活躍するデベロッパーをスターにするためのカンファレンス「Developers Summit」や、エンジニアの生きざまをブーストするためのイベント「Developers Boost」など、さまざまなカンファレンスを企画・運営しています。

CodeZineニュース

JavaScriptテスティングプラットフォーム「Jest 27」がリリース

  • このエントリーをはてなブックマークに追加

  • このエントリーをはてなブックマークに追加

 米Facebookは、JavaScriptテスティングプラットフォームの最新版「Jest 27」を、5月25日(現地時間)にリリースした。

 「Jest 27」には、新機能として失敗したスナップショットを確認・更新することで、より多くの理解を得られるインタラクティブモードが追加されたほか、テストファイルごとの初期化が、前バージョン「Jest 26」と比較して約70%高速化している。

 さらに、JSDOM環境でテストを実行すると、パフォーマンスの大幅なオーバーヘッドが発生することから、デフォルトのテスト環境をjsdomからnodeに変更した。DOM環境を必要とするテストと、必要としないテストが混在するプロジェクトでは、docblocksを使用してDOMを必要とするテストを宣言した上で、デフォルトのnodeを使用することが推奨される。

 なお、次期メジャーリリースでは、依存関係ツリーからjest-jasmine2とjest-environment-jsdomを削除することで、ユーザーの混乱を減らすとともに、インストールサイズの削減を予定している。

 あわせて、「Jest 26」で導入された、同じAPIを介して透過的にアクセスされるFake Timersのオプトイン実装がデフォルトになった。

 そのほか、同一のdoneテストコールバックが複数回呼び出せなくなり、doneの呼び出しとPromiseの返信を組み合わせることができなくなるとともに、describeブロックが何も返さなくなっている。また、testEnvironment、runner、testRunner、snapshotResolverの各構成オプションで使用されるモジュールが、コードの残り部分と同様に変換されるようになった。

 長い期間、非推奨となっていた関数jest.addMatchers、jest.resetModuleRegistry、jest.runTimersToTimeは削除され、jest.addMatchersの代わりにexpect.extend、jest.resetModuleRegistryの代わりにjest.resetModules、jest.runTimersToTimeの代わりにjest.advanceTimersByTimeが使用される。

関連リンク

この記事は参考になりましたか?

  • このエントリーをはてなブックマークに追加
この記事の著者

CodeZine編集部(コードジンヘンシュウブ)

CodeZineは、株式会社翔泳社が運営するソフトウェア開発者向けのWebメディアです。「デベロッパーの成長と課題解決に貢献するメディア」をコンセプトに、現場で役立つ最新情報を日々お届けします。

※プロフィールは、執筆時点、または直近の記事の寄稿時点での内容です

この記事は参考になりましたか?

この記事をシェア

  • このエントリーをはてなブックマークに追加
CodeZine(コードジン)
https://codezine.jp/article/detail/14286 2021/06/02 08:00

おすすめ

アクセスランキング

アクセスランキング

イベント

CodeZine編集部では、現場で活躍するデベロッパーをスターにするためのカンファレンス「Developers Summit」や、エンジニアの生きざまをブーストするためのイベント「Developers Boost」など、さまざまなカンファレンスを企画・運営しています。

新規会員登録無料のご案内

  • ・全ての過去記事が閲覧できます
  • ・会員限定メルマガを受信できます

メールバックナンバー

アクセスランキング

アクセスランキング