我正在Ember qunit中编写单元测试。我想为性能设置一个自定义值。now.
我尝试了sinon.stub(performance,'now', 60000);
,但没有成功。我得到TypeError: stub(obj, 'meth', fn) has been removed.
如何使用sinon.js存根performance.now((?
感谢
创建一个全局对象,如:
global.performance = {
now() {
return <returning_value>; // use Date.now() or any value
};
现在您可以访问performance.now()
不确定第三个参数(60000
(应该是什么,因为我不熟悉performance.now()
,但这不是对Sinon.stub()
的有效调用(没有第三个变量(。不过,根据文档,您应该能够捕获存根函数,然后在其上调用一个方法来指示所需的返回值:
const stub = sinon.stub(performance, 'now');
stub.returns(60000);
然后,当调用存根时,您应该得到:
console.log( stub() ); // 60000
您可以在这个jsfiddle示例中看到这个功能。