私はReact Nativeプロジェクト(v0.46)で作業しています。私は正常にコンポーネントのスナップショットのテストを書くことができましたが、私はトラブルユニットテストのJavaScript ES6機能のまわりで私の頭をラップを抱えています。ここでReact Nativeプロジェクト( "Not a function"エラー)のjestによるユニットテスト
はFakeUtils.jsの私の関数です:
export function sum(a, b) {
return a + b;
}
export function subtract(a, b) {
return a - b;
}
そして、ここでは彼らのために私のテストです:
import sum from '../src/utils/FakeUtils.js';
import subtract from '../src/utils/FakeUtils.js';
describe('sum',() => {
it('should sum 2 nums',() => {
expect(sum(1,2)).toBe(3);
});
});
describe('subtract',() => {
it('should subtract 2 nums',() => {
expect(subtract(2,1)).toBe(1);
});
});
私はNPMのテストを実行すると、これは私が受け取る出力されます。
FAIL __tests__/FakeUtilsTest.js
● sum › should sum 2 nums
TypeError: (0 , _FakeUtils2.default) is not a function
at Object.<anonymous> (__tests__/FakeUtilsTest.js:6:31)
at tryCallTwo (node_modules/promise/lib/core.js:45:5)
at doResolve (node_modules/promise/lib/core.js:200:13)
at new Promise (node_modules/promise/lib/core.js:66:3)
at Promise.resolve.then.el (node_modules/p-map/index.js:42:16)
at tryCallOne (node_modules/promise/lib/core.js:37:12)
at node_modules/promise/lib/core.js:123:15
● subtract › should subtract 2 nums
TypeError: (0 , _FakeUtils2.default) is not a function
at Object.<anonymous> (__tests__/FakeUtilsTest.js:12:31)
at tryCallTwo (node_modules/promise/lib/core.js:45:5)
at doResolve (node_modules/promise/lib/core.js:200:13)
at new Promise (node_modules/promise/lib/core.js:66:3)
at Promise.resolve.then.el (node_modules/p-map/index.js:42:16)
at tryCallOne (node_modules/promise/lib/core.js:37:12)
at node_modules/promise/lib/core.js:123:15
私はここで間違ってやっている任意のアイデアは?
..: は、あなたのケースでは、あなたがをインポートする必要があるように、機能をデフォルトではありません'。 'function sum(){/ * stuff * /}'の代わりに 'function sum(){/ * stuff * /}'を試してみたら、ファイルの最後に 'module.exports .sum = sum'? –