[就像标题说的那样,我想对我的JavaScript进行单元测试,如何隔离$ .publish()和$ .subscribe()调用?我现在正在使用QUnit,但只有几个测试,因此如果需要,我愿意更改框架。
欢呼声
您可以使用以下代码:
test( "Should call a subscriber with standard matching": function () {
var spy = sinon.spy();
PubSub.subscribe( "message", spy );
PubSub.publishSync( "message", { id: 45 } );
assertTrue( spy.calledWith( { id: 45 } ) );
});
这是使用SinonJs。请遵循https://addyosmani.com/blog/unit-testing-backbone-js-apps-with-qunit-and-sinonjs/了解更多此类示例。