通过 Jenkins 作业将 JSON 作为参数之一传递

Sam*_*Sam 5 jenkins jenkins-pipeline

我想使用 Jenkins 作业将 JSON 字符串传递给节点。

JSON={"Automation":{"Env":"XXX","No of TCs to Run":"08","Suite":{"SAMPLE1":[{"testcases":"TC01,TC02,TC03,TC04"},{"TC_Username":"test@xxxxx.xom","TC_Password":"P!assword"},{"TS_Username":"test@xxxxx.xom","TS_Password":"AgeAS2"},{"TM_Username":"test@xxxxx.xom","TM_Password":"P!assword","TM_Company":"TEST","TM_FirstName":"Test","TM_LastName":"FARIZ"}]}} }
Run Code Online (Sandbox Code Playgroud)

Jenkins 作业的构建部分中的代码:

cd C:\Test
BatchRunner.bat %JSON%
Run Code Online (Sandbox Code Playgroud)

pro*_*ats 3

对于任何批处理文件,参数传递的工作方式如下 -

问候.bat文件 -

@echo Hello %1
Run Code Online (Sandbox Code Playgroud)

如果你运行它作为

greet John
Run Code Online (Sandbox Code Playgroud)

它将输出

Hello John
Run Code Online (Sandbox Code Playgroud)

对于作为参数的 JSON 对象,不要忘记使用分隔符反斜杠 -\转义双引号 -"

例如 -

"{\"name\":\"abc\",\"place\":\"xyz\"}"
Run Code Online (Sandbox Code Playgroud)

将被传递为 -

{"name":"abc","place":"xyz"}`
Run Code Online (Sandbox Code Playgroud)

希望这可以帮助。

请参阅网页以获取更多信息。