1

我正在测试一些base.jsdean edwards base.js)代码,并想测试一些基本函数是否被特定参数调用。我们的测试堆栈看起来像 js 代码、qunit、sinon。例如,我有:

var Foo = Base.extend({
    constructor: function () {
        //do constructor stuff
    },
    render: function (config) {
        config = config || {};

        //do rendery stuff with specified config
    }
});

var Bar = Foo.extend({
    render: function () {
        config = {a: 'a', b: 'b'};
        this.base(config);
    }
});

var b = (new Bar()).render();

所以在上面的例子中,我创建了一个“Bar”的新实例并调用了 render 方法。Bar 渲染方法指定一些配置并将其传递给父渲染方法。有什么方法(使用 sinon.js)来监视该基本渲染调用吗?我通常会做类似的事情:

sinon.spy(b, 'render')

但这只会让我第一次调用渲染。

4

0 回答 0