问题描述
这段代码不是编写干净的可测试代码的最佳展示,但我更愿意在这里尝试为一些我不想在重构上投入太多时间的代码编写测试用例。否则我可以通过函数 toMock
作为函数 testing
的参数并轻松对其进行存根。
index.ts
文件
export function toMock() {
console.log('Hello from mock');
}
export function testing() {
console.log('Before Mock')
toMock()
console.log('After Mock')
}
test
文件
import * as sinon from 'sinon';
import * as fn from '../index';
describe('Test suite',() => {
it('Testing',() => {
const stub = sinon.stub(fn,'toMock');
fn.testing()
})
})
如果我在单独的 ts 文件中中断函数 toMock
和 testing
,存根工作正常。但是,当出现在同一个文件中时,它不起作用。我认为它必须与模块的命名空间有关。
是否有任何关于如何使其工作的指示?像 proxyquire
这样的库可能是一个选项吗?请随时向我指出任何相关的在线文献。
解决方法
暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!
如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。
小编邮箱:dio#foxmail.com (将#修改为@)