Javascript 茉莉花中的双打测试

Javascript 茉莉花中的双打测试,javascript,jasmine,Javascript,Jasmine,有人能帮我在Jasmine中创建和使用测试替身吗?我以前主要使用Ruby,如果我在RSpec中测试一个类方法,该方法接收另一个类的实例作为参数,我会使用double 我似乎找不到一个清晰的解释,说明如何在Javascript函数中使用Jasmine中相当于double的函数 例如: 如果我在Ruby中测试一个名为Game的类,并想引入一个Player实例,我会创建一个类似以下内容的双实例: player1=双“player1”,丢失?:真 这在Jasmine中是可能的吗?Jasmine有一个允许

有人能帮我在Jasmine中创建和使用测试替身吗?我以前主要使用Ruby,如果我在RSpec中测试一个类方法,该方法接收另一个类的实例作为参数,我会使用double

我似乎找不到一个清晰的解释,说明如何在Javascript函数中使用Jasmine中相当于double的函数

例如:

如果我在Ruby中测试一个名为Game的类,并想引入一个Player实例,我会创建一个类似以下内容的双实例: player1=双“player1”,丢失?:真


这在Jasmine中是可能的吗?

Jasmine有一个允许创建的API,这些API与模拟或双重测试相同

var player = jasmine.createSpyObj('player', ['lost']);
player.lost.and.callFake(function() {
  return true;
});
或者,JS不是强类型的,因此您可以创建一个普通对象:

var player = {
    lost : function(){
        return true;
    }
};

使用spyOn模拟方法或createSpy创建模拟对象如何?