繁体   English   中英

如何模拟组件的状态以进行单元测试?

[英]How can I mock a component's state for unit testing?

我正在使用酶,开玩笑,正弦进行单元测试。 我想模拟组件状态,并在组件得到渲染之前传递自定义状态。 我该如何实现?

我的组件从一些初始状态开始:

constructor(props) {
   super(props);
   this.state = {
     sample: "hello"
   }
}

我想在渲染发生之前通过模拟假状态并在调用shallow()之前覆盖样本的值。

直接在组件上调用setState吗?

不确定100%,但也许...

const myComponent = <MyComponent {...props} />
myComponent.setState({ ...mockState })

const myShallowRenderedComponent = shallow(myComponent)
const instance = myShallowRenderedComponent .instance()
expect(instance.state).toEqual(mockState)

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM