2016-10-31 5 views
1

私は単体テストを使っていますが、それは動作する関数を含んでいます。コレクションからノードを選択してテキストプロパティを取得することはできますか?私はこれを試してみました:酵素単位検査でどのように要素を見つけるか?

it('should be equaling name property',() => { 
     const props = { 
      myprops: [{ 
       email: "[email protected]", 
       name: "Coco Chanel" 
      }] 
     }; 
     const wrapper = shallow(<ServiceDetails {...props} />); 
     expect(wrapper.find('div')[0].text).equals('Cici Chanel'); 
}); 

これは私のreactjsコンポーネントの一部です:

return (
      <section> 
       <div>{email}</div> 
       <div>{name}</div> 
      </section> 
) 

私はこのエラーを取得していますが:

TypeError: Cannot read property 'text' of undefined 

は、どのように私は2番目のdivを選択して取ることができますそのdivにある値?

答えて

1

私はあなたが一意のdivを識別するために必要と考えている:

expect(wrapper.find('section div:nth-of-type(1)').text()).equals('Cici Chanel'); 

以上:また

return (
     <section> 
      <div className="div1">{email}</div> 
      <div>{name}</div> 
     </section> 
) 

expect(wrapper.find('.div1').text()).equals('Cici Chanel'); 

text is function、ない財産。

関連する問題