Javascript 测试构造函数会实例化另一个类

Javascript 测试构造函数会实例化另一个类,javascript,unit-testing,jasmine,Javascript,Unit Testing,Jasmine,我有一些代码看起来是这样的: var testLib = function(params) { this.conf = new testLib.Config(params); }; testLib.Config = function(params) { //do stuff with params }; 实例化如下: var ins = new testLib({}); 我想测试tesLib构造函数是否使用jasmine正确地实例化了具有正确参数的配置。我正在尝试这个:

我有一些代码看起来是这样的:

var testLib = function(params) {
    this.conf = new testLib.Config(params);
};

testLib.Config = function(params) {
    //do stuff with params
};
实例化如下:

var ins = new testLib({});
我想测试tesLib构造函数是否使用jasmine正确地实例化了具有正确参数的配置。我正在尝试这个:

    spyOn(window,'testLib.Config');
    var test = new testLib('testparam');
    expect(testLib.Config).toHaveBeenCalledWith('testparam');
但这不起作用。我得到一个错误,说testLib.Config方法不存在。它确实存在,因为我包括了我的整个图书馆,所以它对jasmine是可用的


如何测试这个?

spyOn方法的第二个参数应该是引用
函数/方法的属性名

试试spyOn(testLib,'Config')
。它应该会起作用

另外,javascript是区分大小写的。属性
Config
为大写C。请检查
spyOn
方法的第二个参数