因此,我尝试在自动化 SoapUI 项目上运行 shell 脚本,该项目在持续集成中执行。我需要向脚本发送一些参数和 SQL 查询,因此我尝试执行与此类似的命令:
/path/to/file.sh param1 param2 "sql query"
如果我记录命令并手动执行它,它会完美地工作,但是当 groovy 运行它时,“sql 查询”参数会被分成每个空格的多个参数。
我尝试使用以下命令运行命令
String command = "/path/to/file.sh param1 param2 \"sql query\""
def proc = command.execute()
proc.consumeProcessOutput(sout, serr)
proc.waitForOrKill(5000)
我没有明白我做错了什么。 最好的问候
最佳答案
在 Grooy 中,数组(数组是内部列表)也有一个执行方法。通过数组执行命令通常要安全得多。
def command = ['/path/to/file.sh', 'param1', 'param2', 'sql query']
def proc = command.execute()
proc.consumeProcessOutput(sout, serr)
proc.waitForOrKill(5000)
关于groovy - 带有 SoapUI groovy 的 Shell 命令,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/51441172/