天天看點

VBS--自動定時截圖工具

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也寫了個類似功能的工具。

  想到工具開發的原則,無論使用什麼方式、什麼語言,隻要能用,有實際作用即可。還要快速開發。