Stub Process.argv"/>
How to Mock or Stub Process.argv
如何模拟或存根 process.argv 值以便它可以返回特定参数?
我试过像这样使用沙箱:
beforeEach(() => {
sandbox.stub(process.argv.slice(2)[0], 'C:\\home\\project\\assignment').value('--local')
});
test("it replace value of node argument", () => {
assert(process.argv.slice(2)[0], '--local')
});
afterEach(() =>{
sandbox.restore()
})
但是我一直收到一个错误,提示尝试存根属性 *'C:\home\project ssignment' * of undefined
回答如下:您可以通过编程修改
process.argv
。见修改节点进程环境或参数运行时
const assert = require('assert');
describe('71476237', () => {
let originalArgv;
beforeEach(() => {
originalArgv = process.argv;
});
afterEach(() => {
process.argv = originalArgv;
});
it('it replace value of node argument', () => {
process.argv = process.argv.concat(['node', 'C:\\home\\project\\assignment', '--local']);
assert(process.argv.slice(2)[0], '--local');
});
});
测试结果:
71476237
✓ it replace value of node argument
1 passing (3ms)
更多推荐
How to Mock or Stub Process.argv
发布评论