首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

使用new时,Sinon存根不返回值

Sinon是一个JavaScript的测试框架,用于编写单元测试和集成测试。它提供了一组强大的工具和函数,用于模拟和存根函数的行为。

在Sinon中,使用sinon.stub()方法可以创建一个存根函数。存根函数可以用于替代被测试代码中的某个函数,并且可以控制它的行为。当使用sinon.stub()创建存根函数时,可以使用returns()方法来指定存根函数的返回值。

然而,在使用new关键字创建对象时,Sinon存根默认是不会返回值的。这是因为new关键字创建对象时,会自动返回一个新的对象实例,而不是存根函数的返回值。

如果需要在使用new关键字创建对象时,使Sinon存根返回一个特定的值,可以使用returns()方法来指定返回值。例如:

代码语言:javascript
复制
const stub = sinon.stub().returns('mockValue');
const result = new stub();
console.log(result); // 输出: 'mockValue'

在上述示例中,stub存根函数被创建,并使用returns()方法指定了返回值为'mockValue'。然后,通过使用new关键字创建对象时,存根函数会返回指定的值。

需要注意的是,Sinon存根不会影响被测试代码中的实际对象的构造函数。它只是用于替代构造函数的返回值。

对于Sinon存根的更多信息和用法,请参考腾讯云的Sinon文档:Sinon文档

页面内容是否对你有帮助?
有帮助
没帮助

相关·内容

  • java RMI学习笔记RMI(Remote Method)Java RMI 威力强大Java远程消息交换协议JRMP使用RMI优点RMI网络模型网络模型RMI的工作原理RMI远程调用步骤:编码实现j

    RMI(Remote Method) Invocation):远程方法调用,即在RPC的基础上有向前迈进了一步,提供分布式对象间的通讯。允许运行在一个java虚拟机的对象调用运行在另一个java虚拟机上对象的方法。这两个虚拟机可以是运行在相同计算机上的不同进程中,也可以是运行在网络上的不同计算机中。 Java RMI 威力强大 Java RMI在JDK1.1中实现的,其威力就体现在它强大的开发分布式网络应用的能力上,是纯Java的网络分布式应用系统的核心解决方案之一。其实它可以被看作是RPC的Java版本。

    05

    Python 经典面试题 二

    •引用计数:Python在内存中存储每个对象的引用计数,如果计数变成0,该对象就会消失,分配给该对象的内存就会释放出来。•标记-清除:一些容器对象,比如list、dict、tuple,instance等可能会出现引用循环,对于这些循环,垃圾回收器会定时回收这些循环(对象之间通过引用(指针)连在一起,构成一个有向图,对象构成这个有向图的节点,而引用关系构成这个有向图的边)。•分代收集:Python把内存根据对象存活时间划分为三代,对象创建之后,垃圾回收器会分配它们所属的代。每个对象都会被分配一个代,而被分配更年轻的代是被优先处理的,因此越晚创建的对象越容易被回收。

    05
    领券