2017-09-20 14 views
0

反応し、私は現在、私のコンポーネントの内部メソッドをテストしようとしている、私はこれが試験方法 - 私はネイティブとJavascriptを反応させるためにはかなり新しいですネイティブ

const wrapper = shallow(<Component/>);
wrapper.instance().methodIwannaCall();
様酵素で行われて見てきました

iOS Devの世界から来て、なぜクラスのインスタンスを取得してメソッドを呼び出すのがとても複雑であるように思えるか分かりません。

残念ながら私はリアクト16.0.0-alpha.12を使用しています。つまり、今ではEnzymeを使用することはできません。誰もが必要とするものを達成するために使用しているライブラリのようです。

また、私はReduxを使用していません。Reduxを使用すると、これは私のビジネスロジックがすべてアクション内にあり、テストするのが簡単になるため、これは苦しいことではないでしょう。

ご意見・ご協力をお待ちしております。あなたがrenderIntoDocument方法使用して、たとえば、あなたのコンポーネントのインスタンスを取得するには、純粋なReactTestUtilsを使用することができます

乾杯

答えて

0

import ReactTestUtils from 'react-dom/test-utils'; 

const wrapper = ReactTestUtils.renderIntoDocument(<Component/>); 
wrapper.methodIwannaCall(); 
+0

をちょっとあなたの答えのための@Amidのおかげで、私はそれを得るために管理していませんでしたReactTestUtilsはReact-Nativeで動作しません。この回答を見るhttps://stackoverflow.com/a/46381217/1932547 – Andrespch

+0

あなたの反応ネイティブのタグが見つかりませんでした。私は通常の反応でこのアプローチを使用しました。 – Amid

関連する問題