在单个命令中创建和配置sinon存根,可以使用以下步骤:
sinon.stub()
方法。该方法接受两个参数:被存根的对象和要存根的方法名。例如,如果你要存根一个名为getData
的方法,可以这样写:sinon.stub()
方法。该方法接受两个参数:被存根的对象和要存根的方法名。例如,如果你要存根一个名为getData
的方法,可以这样写:stub.returns(value)
来指定存根方法的返回值。stub.callsFake(fakeFunction)
来指定存根方法被调用时的行为,其中fakeFunction
是一个自定义的函数。stub.throws(error)
来指定存根方法抛出的异常。restore()
方法来恢复原始方法:restore()
方法来恢复原始方法:完整的示例代码如下所示:
const sinon = require('sinon');
const obj = require('./your-module'); // 替换为你的模块路径
describe('Your Test Suite', () => {
let stub;
beforeEach(() => {
stub = sinon.stub(obj, 'getData');
});
afterEach(() => {
stub.restore();
});
it('should return mocked data', () => {
stub.returns('mocked data');
// 执行测试逻辑,验证返回值是否符合预期
});
it('should call the method', () => {
stub.callsFake(() => { console.log('Method called'); });
// 执行测试逻辑,验证方法是否被调用
});
it('should throw an error', () => {
stub.throws(new Error('Mocked error'));
// 执行测试逻辑,验证是否抛出了预期的错误
});
});
这样,你就可以在单个命令中创建和配置sinon存根了。请注意,这只是一个简单的示例,你可以根据自己的需求进行更复杂的配置和使用。
领取专属 10元无门槛券
手把手带您无忧上云