妙用DOS命令测试软件运行速度
dos吧
全部回复
仅看楼主
level 1
DOS命令也能用来测试软件?当然,只要你能巧妙运用,一切皆有可能。比如在软件测试中,一般都有一项关于软件启动时间的测试,以作为比较不同软件的运行效率的参考。如果你用眼睛紧盯着系统托盘中的小时钟来记录的话,肯定不是很精确,但是,组合运用DOS中几个常用命令,却可以漂亮地完成这一任务。   打开记事本,输入以下内容:   echo "开始时间:" > test.txt   time /t >> test.txt   start "软件启动中..." /wait %1   echo "结束时间:" >>test.txt   time /t >>test.txt   start test.txt   将上面的内容保存为扩展名是bat的批处理文件(如:test.bat),放到桌面上。测试的时候,只需将要测试的程序(如:Photoshop.exe)拖放到桌面上的test.bat文件上,放开鼠标键后即可自动启动Photoshop;启动完闭,立即关掉Photoshop,test.bat批处理程序立即会打开一个文本文件,其中就已经记录了此次Photoshop启动所花的时间。   当然,这个脚本还过于简单,有兴趣的朋友可以进一步细化它,也是个不错的工具呢。      小提示   ★这一脚本中,最核心的是第3行中的“Start”命令,它是DOS中用来启动第三方程序的强大命令。其中的“/wait”参数,表示启动应用程序并等候它结束,然后再执行下面的语句。“%1”参数,表示执行批处理程序时所带的参数,即要测试的程序。在将Photoshop.exe程序拖放到test.bat上时,实际上等同于执行了类似“test.bat "D:\Program Files\Adobe\Adobe Photoshop CS3\Photoshop.exe"”这样的命令。 好帖要顶啊!!!
2008年11月16日 05点11分 1
level 2
妙!不过,启动完毕并未立即关掉启动的应用程序,启动时间显示未能精确到秒,只显示到分,因此,程序启动的时间根本无法确认,启动时间与结束时间一样,因为启动一个应用程序一般不到一分钟。
2008年11月16日 15点11分 2
level 5
@echo off
Setlocal Enabledelayedexpansion 
Set "Data=%~1"
If "!Data!"=="/?" Call:Help "Message"&&Goto:Eof
If "!Data!"=="-?" Call:Help "Message"&&Goto:Eof
If "!Data!"=="" Call:Help "Error=1" "Message=没有参数"&&Goto:Eof
If Not Exist "%Data%" Call:Help "Error=2" "Message=找不到文件 - !Data!"
Set "Time_Start=%time:~0,2%%time:~3,2%%time:~6,2%%time:~9,2%"
"!Data!"
Set "Time_End=%time:~0,2%%time:~3,2%%time:~6,2%%time:~9,2%"
Set /A "Time_=!Time_End!-!Time_Start!"
Echo 程序已结束,用时   !Time_!  毫秒
Goto:Eof
:Help
If "%~1"=="Message" Goto Help_Message
For /F "tokens=2 delims==" %%t in ("%~1") Do Set "Error_Message=%%t"
For /F "tokens=2 delims==" %%t in ("%~2") Do Set "Error_Level=%%t"
Echo 错误:!Error_Message!
Echo 错误数值:!Error_Level!
Echo.
Echo 详见 %~nx0 /?
Goto:Eof
:Help_Message
Echo 测算一个程序需要多少时间...
Echo.
Echo %~nx0 [Drive:][Path][FileName]
Echo.
Echo 一次只支持一个文件...
Echo.
Echo By 专业的电脑医生
Goto:Eof
2009年07月05日 13点07分 4
level 1
表示崇拜
2010年10月30日 09点10分 5
level 1
顶下
2010年11月02日 11点11分 7
level 5
很牛啊...
2010年11月06日 01点11分 8
level 1
看不下去了 ,有没有简单点的 …… [啊!]
2010年11月29日 08点11分 10
level 1
复杂。
2012年06月01日 23点06分 12
level 1
请问如果要测程序的运行时间呢 ?
2016年07月24日 12点07分 14
level 8
[乖][乖][乖][乖]
2016年07月26日 09点07分 16
1