【发布时间】:2022-01-04 16:10:55
【问题描述】:
我正在尝试使用 jest 和 react 测试库编写单元测试。我想在 useEffect 挂钩中测试一个函数调用,但我的测试不起作用。我需要做什么才能成功通过测试?
useEffect(() => {
getActiveFilters(filterValue);
// eslint-disable-next-line
}, [filterValue, dictionaries]);
这是我的测试
it('should call the [getActiveFilters] function', async () => {
const getActiveFilters = jest.fn();
await waitFor(() => expect(getActiveFilters).toHaveBeenCalled());
});
【问题讨论】:
-
您只是在创建一个新变量并将其设置为
jest.fn()...与您要测试的组件没有任何连接。测试这个函数的结果(例如渲染内容的一些变化),而不是一些函数的实现..
标签: reactjs jestjs react-testing-library