获取 ReferenceError: ResizeObserver 未定义,但未使用它

wal*_*d32 1 javascript arrays testing unit-testing reactjs

我是反应测试的新手,收到此错误(ReferenceError:ResizeObserver未定义)错误,但我没有在任何地方使用它,我认为问题出在分配库示例上:https ://codesandbox.io/s/6bdt88

对这个错误有什么想法吗?

在此输入图像描述

import React from "react";
import Page from "../Page";
import { Provider } from "react-redux";
import { store } from "../../redux/store";

import "@testing-library/jest-dom/extend-expect";


describe("Testing component Page", () => {
  const Navbar = (): RenderResult =>
    render(
      <Provider store={store}>
        <MemoryRouter>
          <Page />
        </MemoryRouter>
      </Provider>
    );

  test("Testing Page", () => {
    Navbar();
    
  });
});
Run Code Online (Sandbox Code Playgroud)

wal*_*d32 5

显然分配库使用“ResizeObserver”并在您的 setupTests.js(如果您没有它,只需创建它)文件中粘贴此文件,它将修复它:

global.ResizeObserver = jest.fn().mockImplementation(() => ({
    observe: jest.fn(),
    unobserve: jest.fn(),
    disconnect: jest.fn(),
}))
Run Code Online (Sandbox Code Playgroud)