反应测试库渲染,子道具未定义

时间:2019-11-25 10:40:03

标签: react-testing-library

假设我要检查此组件使用正确的初始道具渲染其子对象

const { container } = render(<Header/>)

哪里

<div> <SomeChild custom-prop=innerHeaderVariableLikeInitialState /> </div>

在运行测试之前,我可以尝试检查任何内容之前,将道具'custom-prop'标记为必需,但其值未定义(我使用道具类型) 因此,这意味着react-testing-library不初始化其子组件吗? 如何处理呢?我觉得我不是以正确的角度来拍摄

谢谢

1 个答案:

答案 0 :(得分:0)

您正在寻找的可能是container.firstChild

但是,对某些道具的存在进行测试违背了“反应测试库”的“不测试实现细节”方法。确实,无法对呈现的输出执行此操作,因为它是所有DOM元素,而不是React组件。而是考虑您要查找哪些面向用户的元素,例如文本,可访问性标签等。如何验证用户正在看到期望他们看到的东西?