gpt4 book ai didi

unit-testing - Windows 批处理文件有单元测试框架吗?

转载 作者:行者123 更新时间:2023-12-02 01:42:07 25 4
gpt4 key购买 nike

我只需要一些非常简单的东西,比如“运行这个命令,如果控制台输出中的某个地方有‘这个字符串’,则成功,否则失败”。有这样的工具吗?

最佳答案

据我所知,您可以轻松地在另一个批处理脚本中编写一个脚本。

call TestBatchScript.cmd > console_output.txt
findstr /C:"this string" console_output.txt
如果找到该字符串,

会将 %errorlevel% 设置为零;如果该字符串不存在,则将设置非零。然后,您可以使用 IF ERRORLEVEL 1 goto :fail 进行测试,并在 :fail 标签后执行您想要的任何代码。

如果你想对几个这样的字符串进行紧凑的评估,你可以使用||语法:

call TestBatchScript.cmd > console_output.txt
findstr /C:"teststring1" console_output.txt || goto :fail
findstr /C:"teststring2" console_output.txt || goto :fail
findstr /C:"teststring3" console_output.txt || goto :fail
findstr /C:"teststring4" console_output.txt || goto :fail
goto :eof

:fail
echo You Suck!
goto :eof

或者,您可以更进一步,从文件中读取字符串列表

call TestBatchScript.cmd > console_output.txt
set success=1
for /f "tokens=*" %%a in (teststrings.txt) do findstr /C:"%%a" console_output.txt || call :fail %%a
if %success% NEQ 1 echo You Suck!
goto :eof

:fail
echo Didn't find string "%*"
set success=0
goto :eof

关于unit-testing - Windows 批处理文件有单元测试框架吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6612415/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com