我想用 Jasmine 测试一个 Javascript 函数,它的结构如下:
showEditUser: function (...) {
// more code here...
var editUserView = new EditUserView();
// more code here...
editUserView.generate(...);
}
editUserView.generate()导致错误。没关系,因为我不想测试它。但是我怎样才能防止它被调用呢?
EditUserView是一个 RequireJS 模块,它扩展了另一个名为BaseView. 该函数generate()在 中定义BaseView。还有其他模块可以扩展BaseView,我希望它们都不要在测试时调用生成。我怎么能用茉莉花做到这一点?似乎不可能,因为调用函数时spyOn(...).and.callFake()我没有对象。editUserView有没有一种静态的方式来告诉 Jasmine 中的callFake()函数?generateBaseView