我寫我們正在寫一個陣營機應用程序的一些笑話測試。在一個組件,我收到一個錯誤,
User is not defined.
所以我在組件console.log(user)
,並得到了輸出。然後創建了user
的模擬。
用戶
module.exports = {
id: 'ABCDERD',
name: 'Boss Ninja',
language: 'en',
};
在組件拋出的錯誤是這樣的線,
const languageName = _.findWhere(languages, { key: this.props.screenProps.user.get('language') }).value;
所以一旦我創建模擬user
錯誤清除,但後來我得到這個錯誤,
TypeError: Cannot read property 'get' of undefined
我在這裏假設臨屋區我需要爲get()
創建一個模擬。但是。我不知道該怎麼稱呼它。如果有人願意告訴我如何處理爲這個組件編寫測試來渲染它,我將不勝感激。
這就是我要做的,
const tree = renderer.create(
<ProfileScreen screenProps={user} />
);
如何清除的get()
錯誤沒有被定義的?
例
用戶對象
module.exports = {
id: '0052C000000gFJrQAM',
name: 'My Name',
language: 'en',
get: language => language,
value: 'English (US)',
};
測試
const tree = renderer.create(
<ProfileScreen screenProps={{ user }} />
);
錯誤
TypeError: Cannot read property 'value' of undefined
在代碼中,你傳遞一個用戶screenProps。在此之前,你說你已經創建了一個用戶的模擬。你嘲笑這個用戶的地方,你必須有一個屬性得到這個用戶將是一個功能,我會告訴你 –
我有更新我的答案告訴我,如果它的工作請 –
你仍然有錯誤無法讀取屬性'獲取'未定義? –