鍍金池/ 問(wèn)答/HTML/ react單元測(cè)試如何改變props來(lái)檢測(cè)componentDidUpdate鉤

react單元測(cè)試如何改變props來(lái)檢測(cè)componentDidUpdate鉤子

一個(gè)React組件,我們要給它寫(xiě)單元測(cè)試,使用的是Jest配合react-dom/test-utils,那么如何改變props從而覆蓋到componentDidUpdatecomponentWillRecieveProps?

回答
編輯回答
妖妖

https://discuss.reactjs.org/t...

var view = TestUtils.renderIntoDocument(<TestComponent value="abc" />);

// previously
view.setProps({ value: 'newValue' });
expect(view.state.someVal).to.be(someValue);

// now
ReactDOM.render(<TestComponent value="newValue" />, ReactDOM.findDOMNode(view).parentNode);
expect(view.state.someVal).to.be(someNewValue);
2017年7月13日 23:09