gpt4 book ai didi

javascript - 使用 mocha 测试套件中的参数调用 index.js

转载 作者:行者123 更新时间:2023-12-03 01:19:11 26 4
gpt4 key购买 nike

我有一个带有一些参数的 index.js

// parameters
var outFile = process.argv[2] || (() => {throw "missing argument outFile";})();
var templateName = process.argv[3] || (() => {throw "missing argument templateName";})();

现在我想测试使用参数调用index.js,不是测试函数本身,而是测试参数验证。

有一种方法可以编写这样的 Mocha 套件

var assert = require('assert');
describe('Wenn calling index.js', function() {
describe('with arguments arg1 arg2', function() {
it('should should fail because of "missing argument outFile"', function() {
...
});
});
});

最佳答案

process 是 Nodejs 应用程序中的全局变量,因此您应该能够在测试中设置所需的参数。您可以使用 afterEach Hook 重置 process.argv

var assert = require('assert');
describe('Wenn calling index.js', function() {
describe('with arguments arg1 arg2', function() {

afterEach(function(){
process.argv = process.argv.slice(0,2);
});

it('should should fail because of "missing argument outFile"', function() {
process.argv[3] = "param templateName";
require("path/to/index.js");
});
});
});

关于javascript - 使用 mocha 测试套件中的参数调用 index.js,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/51838948/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com