在Katalon Studio中从测试自动化Groovy脚本杀死进程

在Katalon Studio中从测试自动化Groovy脚本杀死进程,groovy,process,automated-tests,katalon-studio,Groovy,Process,Automated Tests,Katalon Studio,我想检查AUT是否正在打开PDF查看器,我想在测试执行完成后终止该进程。这是相关的代码行: Runtime.getRuntime().exec("taskkill /im AcroRd32.exe /f") 测试通过,但Acrobat阅读器仍处于打开状态 我认为问题在于cmd.exe没有授权从Katalon Studio终止进程,因此我将其设置为始终以管理员身份运行,如前所述 如果我运行 taskkill /im AcroRd32.exe /f Acrobat Reader直接从命令行按预期

我想检查AUT是否正在打开PDF查看器,我想在测试执行完成后终止该进程。这是相关的代码行:

Runtime.getRuntime().exec("taskkill /im AcroRd32.exe /f")
测试通过,但Acrobat阅读器仍处于打开状态

我认为问题在于
cmd.exe
没有授权从Katalon Studio终止进程,因此我将其设置为始终以管理员身份运行,如前所述

如果我运行

taskkill /im AcroRd32.exe /f
Acrobat Reader直接从命令行按预期关闭,但如果从Katalon脚本运行,它仍然保持打开状态


如何消除它?

这可以帮助您,记住参数应该放在“”中

Runtime.getRuntime().exec(…)
只启动进程并返回进程对象。如果您没有阅读stdout&stderr,那么这个过程可能就卡住了。使用方法收集执行结果并对其进行分析。
String[] arguments = {
    // Arguments for program
}
ProcessBuilder pb = new ProcessBuilder(arguments);
pb.inheritIO();

Process process = pb.start();
process.waitFor();
pb.destroy();