我想使用Jasmine JS和Karma在Javascript中的另一个函数中模拟对象实例化调用。代码段如下所示:
ClassA = function(){
var objB = new ClassB(); // How to fake this call?
function method(){
// Want to test this method
}
}
ClassB = function(){
}
答案 0 :(得分:1)
我建议你使用Sinon.js: http://sinonjs.org/
我们你可以声明间谍和存根,允许你检查函数(间谍)是否被调用或者注入函数返回某些值(存根)。
另外如果你想模拟整个B类,我建议你把它注入类构造函数(依赖注入),这样你就可以在测试期间注入你的模拟。