使用QTP進行WEB頁面效能測試

TIB發表於2010-02-02

QTP是功能測試工具,但是也可以用於WEB頁面的效能測試,下面指令碼利用了IE的COM介面和DOM獲取ReadyState的方式來測試WEB頁面載入的效能:

 

SiteURL = "http://blog.csdn.net/testing_is_believing" 'Set the URL to visit
result = timeCount (SITEURL) 'returns running results
MsgBox result 'output to run As a result, the line can be commented out loadrunner


Public Function timeCount (url)
 Set dom = CreateObject ( "InternetExplorer.Application") 'Create an IE object
 dom.Navigate (url) 'open the specified URL
 time_start = Now () 'to obtain statistics at the beginning of time
 timer_start = timer () 'Get the current time in milliseconds
 'a = dom.ReadyState' Get the current state of the value of IE will be used to determine the value of the state of the current state of the IE
 dom.visible = True 'Set IE can be seen
 While dom.busy or (dom.readyState <> 4) 'When the IE is in BUSY status or load does not complete (readystate is not equal to 4), depending on the state of IE statistical time, once every millisecond Statistics
  'WScript.Sleep 1 'time interval 1 ms, if the relatively long time interval, then is likely to take less than a state value
        Wait 0, 1
  Select Case dom.readystate 'to determine the value of dom.readystate
   Case 0 'IE is not initialized, in fact, the method, readystate = 0 meaningless, because the cycle is at least a start.
    time0 = Now ()
    timer0 = timer ()
   Case 1 ' "is sending request"
    time1 = Now ()
    timer1 = timer ()
   Case 2 ' "request has been sent to complete"
    time2 = Now ()
    timer2 = timer ()
   Case 3 ' "can receive the part of the response data,"
    time3 = Now ()
    timer3 = timer ()
   Case 4 ' "Page is loaded"
    time4 = Now ()
    timer4 = timer ()
  End select
 wend
 time_end = Now () 'Statistical End Time
 'MsgBox "Start time is:" & time1 & "; the end of time is" & time2
 timeCount = "Statistics Start Time:" & start_time & vbcrlf & "time0:" & time0 & vbcrlf & "time1:" & time1 & vbcrlf & "time2: "_
       & time2 & vbcrlf &" time3: "& time3 & vbcrlf &" time4: "& time4 & vbcrlf &" to complete the initialization of IE and send request:  "_
       & (timer1-timer_start) &" seconds "& vbcrlf &" to send the completion and acceptance of server-side part of the response data:  "_
       & (timer3-timer1) &" seconds "& vbcrlf &" 100% to receive and complete the HTML content parsing: "_
       & (timer4-timer3) &" seconds "& vbcrlf &" Total spent: "& (timer4-timer_start) &" seconds "
End Function

 

參考:

http://www.qtp10.com/2009/12/web-application-performance-testing.html

 

相關文章