首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >使用Sinon.js的存根performance.now()

使用Sinon.js的存根performance.now()
EN

Stack Overflow用户
提问于 2020-03-21 02:47:17
回答 2查看 118关注 0票数 0

我正在用Ember-qunit编写单元测试。我想在performance.now上设置一个自定义值。

我尝试过sinon.stub(performance,'now', 60000);,但这不起作用。我得到了TypeError: stub(obj, 'meth', fn) has been removed.

如何使用sinon.js来存根performance.now()?

谢谢

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2020-03-21 04:56:26

不确定您的第三个参数(60000)应该是什么,因为我不熟悉performance.now(),但这不是对Sinon.stub() (there is no 3rd parameter)的有效调用。但是,根据文档,您应该能够捕获存根函数,然后对其调用一个方法来指示所需的返回值:

代码语言:javascript
复制
const stub = sinon.stub(performance, 'now');
stub.returns(60000);

然后,当调用存根时,您应该得到:

代码语言:javascript
复制
console.log( stub() );  // 60000

您可以在此jsfiddle example中看到此功能。

票数 0
EN

Stack Overflow用户

发布于 2020-06-19 21:01:56

创建全局对象,如下所示:

代码语言:javascript
复制
global.performance = {
   now() {
    return <returning_value>; // use Date.now() or any value
};

现在您可以访问performance.now()

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/60780014

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档