我目前正在開發一個反應原生項目並希望利用Firebase JS SDK。爲了熟悉它的API,我想用Jest編寫一些學習測試。這是我的測試:Jest + Firebase:TypeError:無法讀取未定義的屬性'defineProperties'
import Firebase from 'firebase';
describe('Firebase', function() {
it('should work', function() {
expect(null).toBeNull()
})
});
不幸的是我得到這個錯誤: ●測試套件運行失敗
TypeError: Cannot read property 'defineProperties' of undefined
at node_modules/firebase/app-node.js:18:234
at Object.<anonymous> (node_modules/firebase/app-node.js:23:260)
at Object.<anonymous> (node_modules/firebase/firebase-node.js:8:16)
at Object.<anonymous> (firebase.test.js:1:104)
如果我更換進口狀態import React from 'react'
一切工作正常。那麼爲什麼我無法使用Firebase來測試一些API調用。
這是我package.json
:
{
...,
"dependencies": {
"firebase": "^3.5.0",
"react": "15.3.2",
"react-native": "0.35.0"
},
"jest": {
"preset": "jest-react-native"
},
"devDependencies": {
"babel-jest": "16.0.0",
"babel-preset-react-native": "1.9.0",
"jest": "16.0.1",
"jest-react-native": "16.0.0",
"react-test-renderer": "15.3.2"
}
}
在這裏是一樣的。 Firebase在應用程序本身內運作良好,但是一旦您嘗試運行測試,就會發生此錯誤。相當煩人:( –
同樣在這裏,你有沒有想出解決方案來構建你的應用程序? – hs2345
同樣的問題,如果我從'firebase'導入*作爲firebase;'我得到'無法讀取屬性'導航器' undefined' – rel1x