我正在测试一个没有ID的组件,以便我可以从Jest中进行选择,安装的组件快照将类似于
<div id='divHeader'>
<h2
className=""
style={Object {}}
>
<span
className=""
style={Object {}}
>
This is an English text
</span>
</h2>
</div>
所以我有什么办法可以验证快照范围内的文本是否包含世界English
,类似
widget = mount(<MyComponent {...defaultProp} />);
// widget.find('span').text.contains('English')
// widget.find('[id="divHeader"]').h2.span.text.contains('English')
我在find
中遇到了一些麻烦,我知道它可以通过id查找元素,但是不幸的是,我无法将任何id分配给我的跨度,即使我可以通过id查找div,也无法选择其子元素元素,例如div-> h2-> span ...
find返回类似于安装的ReactWrapper
,因此您可以链式查找呼叫。