测试库:如何获取具有 Text 子节点的父节点
Testing Library: How to get parent node that has a child with Text
在测试库中,我试图找到一种方法来查找其子元素符合条件的元素:
让我们在测试中呈现的容器中考虑这一点:
<div class="classA">
<div class="classB">
<div class="classC">
some text
</div>
</div>
<div class="classB">
<div class="classC">
more text
</div>
</div>
</div>
我想找到
<div class="classB">
<div class="classC">
some text
</div>
</div>
我试过:
getByText(container, 'some text', {selector: 'classB'})
但 returns
<div class="classC">
some text
</div>
我找不到包含此文本的 container/component/parent 什么?
请看下面的代码,可能会有帮助
queryAllByText((_, element) =>
element.textContent === "some text" && element.className === 'classB')
我知道已经晚了,但是如果有人想在查询文本时得到 parent:
expect(getByText('Name').parentElement?.style.left).toBe('50px');
在测试库中,我试图找到一种方法来查找其子元素符合条件的元素: 让我们在测试中呈现的容器中考虑这一点:
<div class="classA">
<div class="classB">
<div class="classC">
some text
</div>
</div>
<div class="classB">
<div class="classC">
more text
</div>
</div>
</div>
我想找到
<div class="classB">
<div class="classC">
some text
</div>
</div>
我试过:
getByText(container, 'some text', {selector: 'classB'})
但 returns
<div class="classC">
some text
</div>
我找不到包含此文本的 container/component/parent 什么?
请看下面的代码,可能会有帮助
queryAllByText((_, element) =>
element.textContent === "some text" && element.className === 'classB')
我知道已经晚了,但是如果有人想在查询文本时得到 parent:
expect(getByText('Name').parentElement?.style.left).toBe('50px');