Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/466.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 测试库和fireEvent存在问题_Javascript_Reactjs_Testing_Jestjs_React Testing Library - Fatal编程技术网

Javascript 测试库和fireEvent存在问题

Javascript 测试库和fireEvent存在问题,javascript,reactjs,testing,jestjs,react-testing-library,Javascript,Reactjs,Testing,Jestjs,React Testing Library,我可以通过使用.getByPlaceholderText正确渲染组件并获取输入标记。问题是,在使用fireEvent更改输入值后,使用findByText无法获得相同的输入。这不是我将要使用的测试;我只是想了解为什么这不起作用 it('默认显示clearIcon',async()=>{ //渲染我的组件 render() //按占位符查找输入html元素-它有效 const inputNode=wait screen.findByPlaceholderText(/search/i) //触发一个

我可以通过使用
.getByPlaceholderText
正确渲染组件并获取输入标记。问题是,在使用
fireEvent
更改输入值后,使用
findByText
无法获得相同的输入。这不是我将要使用的测试;我只是想了解为什么这不起作用

it('默认显示clearIcon',async()=>{
//渲染我的组件
render()
//按占位符查找输入html元素-它有效
const inputNode=wait screen.findByPlaceholderText(/search/i)
//触发一个事件,其中我将输入值更改为“Text”
更改(inputNode,{target:{value:'Text'})
//通过我在其中添加的文本“text”查找相同的元素
//这不能说明它“找不到具有text/text/i的元素”
const sameInput=wait screen.findByText(/Text/i)
expect(sameInput).toBeInTheDocument()
})

问题是我试图测试一个嵌套组件,而输入值的状态在包装器组件中。将测试转移到包装组件解决了这个问题