2015-07-13 46 views
1

我有一个Jenkins作业,它触发Robot Framework测试套件。我在构建步骤中使用“执行Windows批处理命令”来配置此作业。在这个批处理命令行中有一个pybot命令。但我需要一个返回代码来使用执行另一个脚本或完成执行。 那么,如何从pybot命令获得返回码或输出语句以实现执行的成功/失败状态?Robot Framework - pybot命令输出

UPDATE 我添加了一个if块。当套件成功时,似乎工作正常。但是套件失败时,它不能进入​​其他块。我错过了什么?

pybot --suite login --argumentfile "C:\Program Files (x86)\Jenkins\jobs\live_smoke_CicekSepeti\workspace\Execution\server\settings\ciceksepeti_argumenfile_LIVE_chrome.txt" --variablefile "C:\Program Files (x86)\Jenkins\jobs\live_smoke_CicekSepeti\workspace\Execution\server\settings\ciceksepeti_variable_LIVE_chrome.py" --loglevel INFO "C:\Program Files (x86)\Jenkins\jobs\live_smoke_CicekSepeti\workspace" 
if %ERRORLEVEL% EQU 0 
(exit) 
else (pybot --rerunfailed "output.xml" --output "rerun.xml" --loglevel INFO "C:\Program Files (x86)\Jenkins\jobs\live_smoke_CicekSepeti\workspace"&rebot --merge "output.xml" "rerun.xml") 

回答

1

以下变量包含返回代码:

%ERRORLEVEL% 
+0

我添加为另一个构建步骤的反应,但它给了我输出为“0“不被识别为一个内部或外部命令,可操作的程序或批处理文件“。即使测试失败或成功。 –

+0

您必须在相同的构建步骤中使用它(以获取相关的返回代码)。在新的构建步骤中,值为0是正常的(因为没有批处理/进程已启动)。在你的pybot调用之后,你只需添加一个dos/batch代码块来查看%ERRORLEVEL%变量。 –

+0

感谢您的回复@Bruno。我用你提到的if block和更新的问题来做。你能检查吗?谢谢。 –