我正在通过命令行运行Selenium测试脚本,该脚本应根据测试的成功/失败返回“ 0”或“ 1”退出代码。
但是,我无法使用SET命令设置此返回值并将其分配给变量。
我跑步时
Run.bat -project_location "%ProjectLocation%" %RUN_PROP% -latest_exe_status
在命令行中,我得到0-这是预期的。
但是我跑步
SET STATUS=Run.bat -project_location "%ProjectLocation%" %RUN_PROP% -latest_exe_status
echo %STATUS%
我得到-Run.bat -project_location“%ProjectLocation%”%RUN_PROP%-latest_exe_status
我很确定我错过了一些琐碎的事情,但是我无法以某种方式弄清楚自己缺少的是什么!这让我发疯。
答案 0 :(得分:0)
只需从退出代码中设置STATUS变量即可。
Run.bat -project_location "%ProjectLocation%" %RUN_PROP% -latest_exe_status
SET "STATUS=%ERRORLEVEL%"
ECHO The STATUS is %STATUS%
答案 1 :(得分:0)
运行Run.bat后的%ERRORLEVEL%始终为0,因此对我没有帮助。
无论如何,
SET "STATUS=RRun.bat -project_location "%ProjectLocation%" %RUN_PROP% -latest_exe_status"
FOR /F "tokens=* USEBACKQ" %%F IN (`%STATUS%`) DO (SET result=%%F)
echo %result%