Reactjs 使用beforeAll渲染的React测试库在第二次测试中找不到项

Reactjs 使用beforeAll渲染的React测试库在第二次测试中找不到项,reactjs,react-testing-library,Reactjs,React Testing Library,第一批测试通过 我得到的第二个错误是: 从“React”导入React; 从'@testing library/react'导入{render,firevent,waitFor,screen}; 从“@testing library/user event”导入userEvent; 导入“@testinglibrary/jest-dom/extend-expect”; 从“\uuuuu测试\uuuu/\uuuuuuu实用工具\uuuuuuu/WrapProvider”导入WrapProvider;

第一批测试通过

我得到的第二个错误是:

从“React”导入React;
从'@testing library/react'导入{render,firevent,waitFor,screen};
从“@testing library/user event”导入userEvent;
导入“@testinglibrary/jest-dom/extend-expect”;
从“\uuuuu测试\uuuu/\uuuuuuu实用工具\uuuuuuu/WrapProvider”导入WrapProvider;
从“src/pages/movies/index”导入页面电影;
从'src/components/Specific/Movies/moviescont'导入{dataTestid as datatestidmoviescont};
从'src/components/Specific/Movies/SearchMovies/DropdownMovieGenres'导入{dataTestid as dataTestidDropdown};
描述(“”,()=>{
之前(异步()=>{
渲染(
);
等待等待(()=>screen.getByTestId(dataTestIdMoviesCount));//成功
});
描述('onload',()=>{
它('应该有搜索结果',()=>{
期望(screen.getByTestId(datatestimoviescont)).toHaveTextContent(/[1-9]/);//成功
});
});
描述('下拉和搜索',()=>{
它('应该有下拉列表',()=>{

const$dropdown=screen.getByTestId(dataTestidDropdown);//可能在初始加载时没有出现dropdown,您可以
findByTestId
(这是一个搜索1000ms的承诺)

理想情况下,您希望使用从
render()
返回的函数。有一些例外情况,例如使用
React.portal


事实上,如果您不想使用
数据测试ID
,最好搜索用户可以访问的内容,例如辅助功能角色/名称和文本。

看起来您已经正确使用了它(基于以前的使用)。您确定测试中使用的导出/导入的
dataTestidDropdown
值吗?如果您硬编码id,即
screen.getByTestId(“movies dropdown”);
,那么它能工作吗?@Drewrese是肯定的。您可以看到测试显示它找不到它。[data testid=“movies dropdown”]
<div name="genre" style="width:400px" data-testid="movies-dropdown" role="combobox" aria-expanded="false" class="ui compact fluid multiple search selection dropdown">