JestのES2015対応設定

develop/JavaScript
概要

JavaScriptのテストフレームワークにJestを検討して試していたら、JestがデフォルトではES2015に対応しておらず、Node.jsを使っていないJavaScriptで使えないことに気づきました。

具体的にはexport/import文に対応していないのが問題でした。順番が前後してしまいますが、設定で対応できるようなので、先に方法を記録します。Jest v29.5+Node.js v18.10.0で確認しました。

JestをES6化してimport/exportを使う方法」の内容を参考にしました。

内容

まず、Jestのサンプルコード (Getting Started · Jest) は以下のようになっています。

// sum.js
function sum(a, b) { return a + b; } module.exports = sum;
// sum.test.js
const sum = require('./sum'); test('adds 1 + 2 to equal 3', () => { expect(sum(1, 2)).toBe(3); });

ここでES2015のexport/import文ではなく、module.exportsとrequireでモジュールのエクスポート・インポートを行っています。

JestはNode.jsの標準に準拠していて、CommonJSのAPIを基本としているためのようです。

このままだと、ES2015で追加されたexport/import文が使えません。

対処方法が「ECMAScript Modules · Jest」にあります。

残り1949文字。続きはSilver/Gold会員限定。

Free=0/Bronze=220/Silver=1100/Gold=1980円。

会員登録 (About Member)

Comments

Ads Blocker Image Powered by Code Help Pro

広告ブロッカー検知/Ads Blocker Detected

このサイトは会費と広告で運営されています。[Bronze=月220円以上に登録] するか、広告ブロッカーを無効にしてください。

This site is operated by membership and advertise. Please [register at least Bronze=220 JPY/month], or disable ads blocker.

Copied title and URL