小编Ale*_*wer的帖子

如何测试异步useEffect?

如何测试useEffect异步react-testing-libs?

我有:

// in other file
const getData = () => {
  return new Promsise(resolve => setTimeout(() => resolve([1, 2, 3]), 5000));
};

const MyComponent = () => {
  const [data, setData] = useState([]);

  useEffect(() => {
    const fetchData = async () => {
      const data = await getData();
      setData(data);
    };
    fetchData();
  }, []);

  return <div>{data.map(item => <span>{item}</span>)}</div>
};
Run Code Online (Sandbox Code Playgroud)

如何测试这个组件?

我现在的测试:

it('MyComponent test', async () => {
  await act( async () => {
    render(<MyComponent/>, container);
  }); …
Run Code Online (Sandbox Code Playgroud)

reactjs jestjs react-testing-library

19
推荐指数
1
解决办法
2万
查看次数

标签 统计

jestjs ×1

react-testing-library ×1

reactjs ×1