如何测试组件的调整大小行为

Ran*_*lta 6 javascript jestjs

我使用 Jest 作为测试框架。我正在尝试测试 ResizeObserver 回调中的一个函数。

import ResizeObserver from 'resize-observer-polyfill';

const fn = jest.fn();
const element = document.createElement('div');

document.body.appendChild(element);
new ResizeObserver(() => {
  fn();
}).observe(element);
Run Code Online (Sandbox Code Playgroud)

在我的测试中,我尝试更改element使用样式属性的宽度和高度ResizeObserver来触发

it('should call the fn function', () => {
  element.style.width = '100px';
  element.style.height = '200px';

  expect(fn).toHaveBeenCalledTimes(2);
});
Run Code Online (Sandbox Code Playgroud)

但是没有用。这是测试错误

Expected mock function to have been called two times, but it was called zero times.

我需要做什么来模拟ResizeObserver回调?请帮忙。

注意:上面的代码是唯一的简化版本。