nodejs順序執行shell


最近工作中需要用到nodejs編寫腳本來順序執行自動化測試用例,編寫代碼如下:

var runCommand = function (command){
	child_process.exec(command,function (error, stdout, stderr) {
        if (stdout !== null) {
          console.log('exec stdout: ' + stdout);
        }
        if (error !== null) {
          console.log('exec error: ' + error);
        }
    });
};

for (var i = 0; i < path.length; i++) {
		if (i !== 0) {
			if (argv.report === 'true') {
				runCommand('mocha ./');
			};

		};
};

但是nodejs的child_process模塊執行是異步的,多個命令同時執行會失敗。但是自動化測試的服務
不支持同時執行,導致測試多個進程失敗。

最后在網上找到了nodejs的shelljs模塊,可以解決問題:

require('shelljs/global');

for (var i = 0; i < path.length; i++) {
		if (exec('mocha ./').code !== 0) {
			echo('Error: Git commit failed');
			exit(1);
		}
};


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM