如何在soapui中使用groovy运行powershell命令?

时间:2017-04-05 05:57:09

标签: groovy soapui

我想在groovy中以管理员身份运行以下powershell命令。

PS C:\Program Files\APP\Bin> .\app.AdminTool.ps1 -url "https://reference1.jdm-inc.com" enqueue orchestration -file  "C:\Program Files\APP\Importer\daily_report.xml"  -properties @{ 'processing_date' = '2017-01-17' }

我使用以下代码来运行它。

String workingDir= System.setProperty("user.dir","C:\\Program Files\\APP\\Bin")
log.info(System.getProperty("user.dir"))

我将下面的命令保存在一个变量中。

.\app.AdminTool.ps1 -url "https://reference1.jdm-inc.com" enqueue orchestration -file  "C:\Program Files\APP\Importer\daily_report.xml"  -properties @{ 'processing_date' = '2017-01-17' }

我已尝试使用以下命令更改路径和

def proc = "cmd /C dir".execute().text
return proc

这总会带来soapui bin文件夹路径..如何更改路径?

1 个答案:

答案 0 :(得分:2)

def powerShellCommand = '.\\app.AdminTool.ps1 -url "https://reference1.jdm-inc.com" enqueue orchestration -file  "C:\\Program Files\\APP\\Importer\\daily_report.xml"  -properties @{ \'processing_date\' = \'2017-01-17\' }'
def shellCommand = "powershell.exe -ExecutionPolicy Bypass -NoLogo -NonInteractive -NoProfile  -Command \"${powerShellCommand}\""
def process = shellCommand.execute()
process.waitFor()

然后您可以访问Process.outputStream以读取命令输出。