一般來說做接口測試督弓,我們應當手上能夠拿到后臺開發(fā)提供的接口文檔,但是我今天給大家找的是網(wǎng)絡上的案例乒验,學習的同學可以一起看看愚隧。
一、天氣查詢接口(www.webxml.com.cn/WebServices/WeatherWebService.asmx )
二、在天氣查詢接口頁面點擊“getSupportCity”狂塘,字面意思去理解獲取支持的城市录煤,顯而易見是一個查看系統(tǒng)支持哪些城市的接口方法,在編輯框輸入城市或地區(qū)名稱荞胡,如輸入“廣東”妈踊,點擊調(diào)用,會彈出廣東省城市信息列表泪漂,如下圖
三廊营、代碼解析
看到這樣的結(jié)果表示我們的接口請求成功了,并獲得了支持的城市名稱城市萝勤,城市后面括號里是對應的城市代碼露筒。回到我們的腳本中看看代碼的實現(xiàn)敌卓。import urllib2表示我們在python中導入了urllib2這個包慎式,當然后面就是通過urllib2進行的接口訪問,具體的執(zhí)行也很簡單3行趟径。第一行拼接我們需要訪問的接口地址瘪吏,那么我們來看看接口地址怎么得到的呢?回到我們的網(wǎng)頁里找到GET里的介紹:
GET /WebServices/WeatherWebService.asmx/getSupportCity?byProvinceName=string HTTP/1.1
Host: www.webxml.com.cn
自然我們的url拼接起來就是host+get里邊的內(nèi)容蜗巧,而‘?byProvinceName=string’后面的string是要我們傳遞的參數(shù)掌眠,這里的傳遞參數(shù)要區(qū)別一下post傳遞參數(shù),這里是直接在網(wǎng)址里去傳惧蛹,一般是‘扇救?’后面就是參數(shù)了。最后的string就是具體我們要傳的內(nèi)容香嗓,比如我們要查詢是不是支持北京這個城市迅腔,就把string替換成北京。當然我們的腳本里是什么都沒傳靠娱,也就是表示傳的是個空值沧烈,在接口說明里提到了這樣的話:"輸入?yún)?shù):byProvinceName = 指定的洲或國內(nèi)的省份,若為ALL或空則表示返回全部城市像云;返回數(shù)據(jù):一個一維字符串數(shù)組 String()锌雀,結(jié)構(gòu)為:城市名稱(城市代碼)。"如果我們傳遞的是ALL或是空的話是返回全部的城市迅诬。那么我們?nèi)绻獋鬟f一個具體的城市名稱呢腋逆?比如我所在的西安,我們要這樣寫侈贷,借鑒網(wǎng)上網(wǎng)友toppoo所寫即可
四惩歉、周公解夢接口(www.gpsso.com/WebService/Dream/Dream.asmx )
具體實現(xiàn)代碼:
url='http://www.webxml.com.cn/WebServices/WeatherWebService.asmx/getSupportCity?byProvinceName='+u'廣東'.encode('utf-8')
有興趣的童鞋可以自己玩玩