我整理了代码以使其更易于阅读,希望您能提供帮助。
我正在通过电子构建可视化回归测试应用程序。理想情况下,用户可以从GUI运行幽灵测试。
我即将设置好它,我只需要该应用程序能够通过Electron运行Wraith和Bash命令。
我尝试使用
const exec = require("child_process").exec
没有成功,也许我缺少一些东西。
我的test.sh
文件是
#!/bin/sh
echo "Hello World again"
cd ..
wraith capture config.yaml
我尝试过:
exec('node ./test.sh');
和
var myscript = exec('bash ./test.sh');
myscript.stdout.on('data',function(data){
console.log(data);
});
myscript.stderr.on('data',function(data){
console.log(data);
});
这些console.log /回显Hello World
消息,但其余命令似乎都没有运行。
是否有一种方法可以从Electron运行bash脚本,就像从命令行运行bash ./test.sh
一样?
非常感谢您的帮助。
谢谢
萌
答案 0 :(得分:0)
我已经弄清楚了如何从电子应用程序中运行bash脚本。
我利用child_process.exec在命令行环境中执行Shell脚本。
const {execSync} = require('child_process')
execSync('bash ./test.sh', {stdio: 'inherit', cwd: '/Users/user_name/utils/visual-regression-testing/src/bash'})
使用cwd
作为执行命令的文件夹。
希望它可以帮助其他遇到相同问题的人。