2013-11-14 46 views
0

我正在嘗試使用TestComplete來創建一個自動化測試用例,它將測試出REST風格的Web服務。在TestComplete JScript中,如何釋放XMLHTTP對象?

這是腳本;我正在使用JScript。

function test() 
{ 
    var objhttp = Sys.OleObject("MSXML2.XMLHTTP"); 
    objhttp.open("GET", URL_HERE, false); 
    objhttp.send(); 
    // Do stuff with objhttp.responseText here... 
} 

當我第一次運行它時,它似乎得到了正確的響應,並且調用了web服務沒有任何問題。但是,響應似乎在第一次運行後的某處緩存,並且當我第二次運行該腳本時,緩存的響應又回來了,它似乎根本沒有調用Web服務。所以爲了調用Web服務,我必須關閉TestComplete,然後在每次運行腳本時重新打開它。

我搜索了參考文檔,發現OLEObject沒有被TestComplete發佈,所以我必須手動發佈它。然而,我找不到任何方法,將釋放XMLHTTP對象..

我試着調用abort()或做刪除,但他們沒有工作。我如何解決這個問題?

回答

0

這是奇怪的行爲,我不能重現它。一切工作正常,我 - 我每次運行此代碼時,會返回一個新值:

function test() 
{ 
    var objhttp = Sys.OleObject("MSXML2.XMLHTTP"); 
    var url = "http://www.random.org/integers/?num=1&min=1&max=100&col=1&base=10&format=plain&rnd=new"; 
    objhttp.open("GET", url, false); 
    objhttp.send(); 
    Log.Message(objhttp.responseText); 
} 

檢查它是如何爲你工作。