我正在为node.js代码编写一些单元测试,我使用Sinon来存根函数调用
var myFunction = sinon.stub(nodeModule,'myFunction'); myFunction.returns('mock answer');
nodeModule看起来像这样
module.exports = { myFunction: myFunction,anotherF: anotherF } function myFunction() { } function anotherF() { myFunction(); }
对于像nodeModule.myFunction()这样的用例,Mocking显然有用,但是我想知道如何在用nodeModule.anotherF()调用时模拟anotherF()中的myFunction()调用?
解决方法
你可以稍微重构一下你的模块.喜欢这个.
var service = { myFunction: myFunction,anotherFunction: anotherFunction } module.expors = service; function myFunction(){}; function anotherFunction() { service.myFunction(); //calls whatever there is right Now }
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。