我以前在jasmine中有spyOn().and.callFake,它对我的测试有很大帮助,现在我正在使用Jest,我在文档中发现jest.spyOn()存在但没有callFake。我的问题:如何监视方法并使用Jest和expect调用Fake? 最佳答案 jest.spyOnofficialdocumentation给出了很好的答案:Note:Bydefault,jest.spyOnalsocallsthespiedmethod.Thisisdifferentbehaviorfrommostothertestlibraries
我有一个场景,我想在调用回调后在beforeEach上调用done()。我尝试按如下方式执行此操作:spyOn(scope,'onAdmin').and.callThrough().and.callFake(function(){done()})但我不确定我的行为是否正确。基本上我想要实现的是能够在每个回调完成它所做的事情后调用done()。更新:解决方案scope.onAdminBackup=scope.onAdmin;spyOn(scope,'onAdmin').and.callFake(function(admin){scope.onAdminBackup();done();})
我想在我的Jasmine测试中模拟测试数据。这里有两个版本://version1:spyOn(mBankAccountResource,'getBankAccountData').and.callFake(fakedFunction);//version2:spyOn(mBankAccountResource,'getBankAccountData').andCallFake(fakedFunction);当我使用浏览器(Chrome、Firefox)执行测试时,第一个版本可以正常工作。但是,当我用phantomjs运行相同的测试时,我必须使用第二个版本。否则,它会提示函数未定义。错误