「労働者が自分の仕事をうまくやりたいなら、まず自分の道具を研ぎ澄まさなければなりません。」 - 孔子、「論語。陸霊公」
表紙 > プログラミング > ES6モジュールのインポートをJestにmockする方法は?

ES6モジュールのインポートをJestにmockする方法は?

2025-03-24に投稿されました
ブラウズ:338

How to Mock ES6 Module Imports in Jest?

eS6モジュールのjest

interlingでインポートするeS6モジュールを模します。この記事では、JESTでES6モジュールのインポートを模倣する方法について説明し、モジュールの依存関係をテストするという課題に対処します。ただし、輸入がスパイに置き換えられるジャスミンで使用されるアプローチは、異なるテスト環境のためにJestに直接適用できません。この手法は、ES6モジュールのインポートをモックするために活用できます。 const dosomething =(y)=> console.log(y);

// mymodule.js './dependency'から{dosomething}をインポートします。 デフォルトのエクスポート(x)=> { DOSOMTHING(x * 2); };

// mymodule-test.js '../mymodule'からmymoduleをインポートします。 '../dependency'からの依存関係として *インポート; 説明( 'mymodule'、()=> { それ( '入力が2倍で依存関係を呼び出します'、()=> { dependency.dosomething = jest.fn(); //指定された輸出を変異させます mymodule(2); 期待(dependency.dosomething).tobecalledwith(4); }); });

Mockingデフォルトエクスポート

をデフォルトエクスポートでは、「モジュールパス」からインポートモジュール名を使用してインポートしてから、インポートされたオブジェクトのデフォルト値を変異させることができます:

// mymodule.js './mymodule'からmymoduleをインポートします。 '../dependency'からの依存関係として *インポート; 説明( 'mymodule'、()=> { それ( '入力が2倍で依存関係を呼び出します'、()=> { dependency.default = jest.fn(); //デフォルトのエクスポートを変異させます mymodule(2); expect(dependency.default).tobecalledwith(4); //デフォルトに対してアサートします }); });

結論

を使用して、 *構文を使用してエクスポートされたオブジェクトを変異させると、ES6モジュールのインポートをJESTでモックすることが可能です。
リリースステートメント この記事は、侵害がある場合は1729676733に再現されています。勉強[email protected]に連絡して削除してください。
最新のチュートリアル もっと>

免責事項: 提供されるすべてのリソースの一部はインターネットからのものです。お客様の著作権またはその他の権利および利益の侵害がある場合は、詳細な理由を説明し、著作権または権利および利益の証拠を提出して、電子メール [email protected] に送信してください。 できるだけ早く対応させていただきます。

Copyright© 2022 湘ICP备2022001581号-3