1
소품을 통과 효소 단위 테스트를 반응 나는 다음과 같은 오류 얻을 :내가 아래의 구성 요소를 테스트하기 위해 효소를 사용하고
selectedAccount: props.accounts[0].id TypeError: Cannot read property '0' of undefined
을 selectedAccount가에 아래 구성 요소에서 볼 수 있듯이 단위 테스트에서 설정 한 소품에서 값을 얻은 상태입니다. 내 테스트에서
class Modal extends Component {
constructor(props) {
super(props);
this.state = {
selectedAccount: props.accounts[0].id
};
}
render() {
const {selectedAccount} = this.state;
return <div>
<p>
{selectedAccount}
</p>
</div>;
}
나는 상태에서 "selectedAccount"변수 를 설정 소품을 전달하고있다. 다음은
내 테스트입니다 : 상태가 ID와 DESC 속성이있는 계정의 배열을 포함 내가 통과하고있어 소품에서 설정되지 않는 이유는test.only('components/Modal: renders elements', t => {
const defaultProps = { accounts: [{
id: 1, desc: 'account1'
}, {
id: 2, desc: 'account2'
}
]}
const wrapper = shallow(
<Modal/>
).setProps(defaultProps);
const test = wrapper.find('p');
t.equal(test.length, 1, 'should render 1 p element ');
t.end();
});
?