2016-08-03 42 views
7

現在測試React Native組件的首選方法似乎是使用mocha,react-native-mock和酶組合淺顯示組件。如何測試React Native組件多於一個級別的深度?

問題是,淺層渲染只能深入一層,有時組件會嵌套視圖,需要您測試其他一兩層。

理論上,酶支持mount()來完全渲染組件,但實際上這是因爲react-native-mock's View mock does not recurse into children而失敗。

鑑於這些限制,人們如何測試其組件比一個渲染級別更深?

+0

問題是,如果不是隔離測試組件的好習慣...... – sodik

回答

0

我能夠從摩卡來開玩笑交換我的組件測試和這裏下面快照測試的說明來解決這個問題:https://facebook.github.io/jest/docs/tutorial-react-native.html

我那麼的package.json添加開玩笑把現有的測試目標:

"test": mocha … && jest"

有一點要注意的是,我也必須按照說明添加嘲笑的事情,我沒有料想到會被嘲笑的開箱(如:TextInput),以及使用moduleNameMapper到映射一些本地組件這些問題沒有得到妥善解決。