我正在使用酶编写反应成分的jest测试。我必须将值传递给props进行快照测试。如何将值传递给道具类型:
Foo.propTypes = {
children: PropTypes.node.isRequired
text: PropTypes.string.isRequired
}
Foo.test.jsx:
it('captures screenshot of foo', ()=> {
const renderedvalue = renderer.create(<Foo text='test' />.toJSOn();
expect(renderedvalue).toMatchSnapshot();
{);
因为孩子需要,所以它会发出警告以传递它的价值。但我不知道如何为它传递价值。我试过了:
const children= <div />
const renderedvalue = renderer.create(<Foo text='test' children={children}/>.toJSOn();
但它失败了。同样,还有另一个属性PropTypes.object.isrequired
卡:PropTypes.object.isRequired
有人可以帮助我知道如何将这两种道具类型的值传递给酶快照测试。
谢谢!
答案 0 :(得分:0)
children
是一个内置的特殊道具。它意味着该组件包装了其他组件或元素。
试试这样:
it('captures screenshot of foo', ()=> {
const renderedvalue = renderer.create(
<Foo text='test'>
</div>hello</div>
</Foo>
).toJSOn();
expect(renderedvalue).toMatchSnapshot();
{);