4
ES6のインポート/エクスポートの構文を使用すると、Jestはコンポーネントのmockingを明示的にオフにしても、デフォルトでインポートするコンポーネントをautoMockingしているようです。Jest React testing es6インポート/エクスポート不要なモック
jest.autoMockOff();
jest.dontMock("../bundles/Opportunities/MarkAsLost.jsx");
このテストコンポーネントの上部にインポートされ:
import MarkAsLost from "../bundles/Opportunities/MarkAsLost.jsx";
これは、試験されているコンポーネントの下に輸出である:
export default MarkAsLost;
これは結果でありますインポートされたコンポーネントをテストファイルに記録する:
{ [Function]
_isMockFunction: true,
_getMockImplementation: [Function],
mock: { calls: [ [Object] ], instances: [ [Object] ] },
mockClear: [Function],
mockReturnValueOnce: [Function],
mockReturnValue: [Function],
mockImpl: [Function],
mockImplementation: [Function],
mockReturnThis: [Function],
displayName: 'MarkAsLost' }
私は古いスタイルの構文すなわち使用する場合:テストファイル内
var MarkAsLost = require("../bundles/Opportunities/MarkAsLost.jsx");
module.exports = MarkAsLost;
を、これは私がしたいようになりまし振る舞うコンポーネントをlogginの結果である
{ [Function] displayName: 'MarkAsLost' }
すべてのヘルプは
をいただければ幸いです
オプションの場合は、[酵素](http://airbnb.io/enzyme/)をチェックすることをおすすめします。より多くの幸せなユニットテストの経験があるかもしれません。 :) – ffxsam
酵素は素晴らしいです。しかし、@ffxsamあなたのコメントは文脈から外れています。 – everlasto
確かに。だから、私はちょうど答えではなく、それをコメントにしたのです。 – ffxsam