溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊(cè)×
其他方式登錄
點(diǎn)擊 登錄注冊(cè) 即表示同意《億速云用戶服務(wù)條款》

LR基于HTTP協(xié)議的WebService測(cè)試

發(fā)布時(shí)間:2020-06-30 17:29:34 來(lái)源:網(wǎng)絡(luò) 閱讀:1941 作者:lyctest 欄目:軟件技術(shù)

    最近發(fā)現(xiàn)之前做過(guò)的東西,在未掌握牢固的情況下,很快就會(huì)忘掉,所以,通過(guò)這些東西來(lái)保留下一些測(cè)試方法,以便以后能夠回顧。

    WebService的最后一種測(cè)試方法,也就是通過(guò)HTTP協(xié)議來(lái)手寫(xiě)腳本完成測(cè)試,這里雖說(shuō)手寫(xiě)腳本,其實(shí)完成的大部分還是復(fù)制粘貼的工作,很簡(jiǎn)單,下面簡(jiǎn)要記錄。

    這種方式和soap_request一樣,都是找到接口文檔的請(qǐng)求,利用這些請(qǐng)求書(shū)寫(xiě)函數(shù)。

    首先,LR新建HTTP協(xié)議的腳本。

    第二,腳本中用web_custom_request();函數(shù),其中參數(shù)url為我們的天氣預(yù)報(bào)的地址:http://webservice.webxml.com.cn/WebServices/WeatherWebService.asmx

    Method=POST,Body里面即是我們的請(qǐng)求,最終代碼如下:

 

   web_custom_request("web_custom_request",
  "URL=http://webservice.webxml.com.cn/WebServices/WeatherWebService.asmx",
  "Method=POST",
  "TargetFrame=",
  "Resource=0",
  "Referer=",
  "Body=<?xml version=\"1.0\" encoding=\"utf-8\"?><soap12:Envelope xmlns:xsi=\"http://www.w3.org/2001/XMLSchema-instance\" xmlns:xsd=\"http://www.w3.org/2001/XMLSchema\" xmlns:soap12=\"http://www.w3.org/2003/05/soap-envelope\">   <soap12:Body>    <getWeatherbyCityName xmlns=\"http://WebXml.com.cn/\">        <theCityName>&#x4E0A;&#x6D77;</theCityName>    </getWeatherbyCityName>   </soap12:Body></soap12:Envelope>",
  LAST);

這就完成了我們的web_custom_request()函數(shù)

這時(shí)我們進(jìn)行回訪,腳本中會(huì)產(chǎn)生錯(cuò)誤:

Action.c(17): Error -26616: HTTP Status-Code=415 (Unsupported Media Type) for
"http://webservice.webxml.com.cn/WebServices/WeatherWS.asmx" [MsgId: MERR-26616]

 

產(chǎn)生這個(gè)錯(cuò)誤的原因是我們發(fā)送的數(shù)據(jù)包沒(méi)有明確格式類型,服務(wù)器在校驗(yàn)格式時(shí)出現(xiàn)錯(cuò)誤,所以我們需要手動(dòng)添加一個(gè)Header頭部分,使用函數(shù)web_add_header()添加web_add_header("Content-Type",
  "application/soap+xml; charset=utf-8");

這樣再次運(yùn)行就可以成功了。

 

細(xì)心的同學(xué)可能會(huì)發(fā)現(xiàn)在<theCityName>&#x4E0A;&#x6D77;</theCityName>

這里明明是填寫(xiě)城市的地方,為什么填的是一堆亂碼呢。

這是由于我們發(fā)送的格式是utf-8格式的,那么在發(fā)送城市名字時(shí)也需要是utf-8編碼的,要不然服務(wù)器是無(wú)法識(shí)別的,至于轉(zhuǎn)換utf-8編碼,可以通過(guò)百度搜索utf-8編碼轉(zhuǎn)換即可。

 

這就是LR測(cè)試webservice的最后一種方式,到現(xiàn)在3種方式已經(jīng)完畢。

向AI問(wèn)一下細(xì)節(jié)

免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如果涉及侵權(quán)請(qǐng)聯(lián)系站長(zhǎng)郵箱:is@yisu.com進(jìn)行舉報(bào),并提供相關(guān)證據(jù),一經(jīng)查實(shí),將立刻刪除涉嫌侵權(quán)內(nèi)容。

AI