VBS--自動定時截圖工具
2010年09月01日
一、測試設計1
使用vbs編寫一個腳本,讓其在指定時間,截一個圖,即可實作需求。
Vbs腳本如下:
Dim MyTime
MyTime = Timer '傳回午夜12時以後已經過去的秒數
Do While MyTime51600 and MyTimeVbs的檔案,測試開始前點選該檔案。第二天過來,在畫圖中粘貼,即可得到指定時間的截圖。 一、測試設計2
進一步想,能否實作全程不用監控?如用一個晚上,剛好可以跑完四個**點,每到一個**點的不同時刻截屏,整個測試資料更豐富。
編寫如下vbs腳本,結合QTP的使用:
Dim MyTime0
Dim MyTime1
Dim WshShell
Set WshShell=WScript.CreateObject("WScript.Shell")
MyTime0 = Minute(Now)
MyTime1 = Timer '從午夜12點開始到現在逝去的時間
do while MyTime1<=86300 '設定到幾點停止(也可以一直跑)
MyTime1 = Timer
MyTime0 = Minute(Now) '擷取現在的分鐘
if Mytime0=37 then '每個小時的37分鐘截一個圖
Dim qtApp
Set qtApp=CreateObject("QuickTest.Application") '建立QTP對象
qtApp.Launch '啟動QTP
qtApp.Open "C:\Tests\Test1",False '打開測試
qtApp.Test.Run '運作測試
qtApp.Test.Save '儲存測試
qtApp.Quit '退出QTP
Set qtApp=Nothing '釋放QTP應用程式對象
End If
WScript.Sleep 4000 '每個循環後中停止4s,否則該程式一直在快速跑,占用cpu 資源極大
Loop
WScript.Quit
QTP編寫如下test:
Dim str
str = Hour(Now)
Desktop.CaptureBitmap "C:\" & str & ".bmp",true
即可實作每隔一定時間截取圖形的要求。
---------------
後來發現,有同僚使用vc也寫了個類似功能的工具。
想到工具開發的原則,無論使用什麼方式、什麼語言,隻要能用,有實際作用即可。還要快速開發。