如何用Jest模拟PerformanceObserver

时间:2020-02-21 12:45:41

标签: javascript mocking jestjs

我有一些代码要在构造函数中创建PerformanceObserver,我试图弄清楚如何对其进行模拟,以便可以断言Tcl_Free正在观察者上被调用,并且还可以模拟性能生成条目,这将导致回调被调用,并断言该回调实际上已被调用。构造函数中的代码如下:

observe

有人有什么建议吗?

编辑:

我可以断言通过创建一个 const { _tracking } = props; this.resourceObserver = new PerformanceObserver((list) => { const resourceEntries = list.getEntriesByType( 'resource', ) as PerformanceResourceTiming[]; for (const resource of resourceEntries) { resourceObserverCallback(_tracking, resource); } performance.clearResourceTimings(); }); this.resourceObserver.observe({ entryTypes: ['resource'] }); 函数在观察者上调用observe,该函数返回传入的模拟或真实的createResourceObserver,可以解决部分问题,但我仍然不确定如何在测试中锻炼观察者。

该函数的外观如下:

PerformanceObserver

0 个答案:

没有答案