1. 程式人生 > >Python之測試webservice介面

Python之測試webservice介面

一、準備環境

A:線上安裝

  webservice介面測試,需要用到suds庫,網上百度的各種suds庫都沒法安裝,我這裡的Python3.5版本,所以安裝不了那些suds庫也沒有辦法線上安裝,所以這裡就提供一個大家都可用的方法和suds庫。

1)下載suds庫,地址:http://pypi.python.org/packages/source/s/suds-jurko/suds-jurko-0.4.1.jurko.4.zip#md5=769689edca81c34c0421a4145b08c264,檔名為:suds-jurko-0.4.1.jurko.4.zip

2)解壓壓縮包,放到Python安裝路徑下的scripts資料夾下面。

3)然後在cmd命令列中,進入到suds-jurko-0.4.1.jurko.4檔案下面,輸入命令: python setup.py install

4)安裝成功

5)注意:如果在py中寫程式碼 import suds報錯,就要把suds-jurko-0.4.1.jurko.4資料夾下面的dist、suds以及suds_jurko.egg-info這三個資料夾,拷貝到Lib 下面的site-packages路徑下面,就可以正常訪問了。

 6)如果提示 ModuleNotFoundError: No module named 'version',需要更新一下suds-jurko

        執行pip install --upgrade suds-jurko 

B:線上安裝

1)pip install suds

2)pip install suds-jurko

 

6)一切準備就緒,可以開始測試啦!

 

二、使用suds庫來測試webservice介面

1)引入suds庫,程式碼如下:

 

1
from suds.client import Client

 

 

2)建立一個webservice物件,來呼叫webservice裡面的各類介面

1 2 user_url="http://120.24.235.105:8080/finance-user_info-war-1.0/ws/financeUserInfoFacade.ws?wsdl" #這裡是你的webservice訪問地址 client=Client(user_url)#Client裡面直接放訪問的URL,可以生成一個webservice物件

 

3)打印出這個wsdl地址裡面的所有介面資訊:

1 print(client)#列印所webservice裡面的所有介面方法名稱,結果如下截圖所示:

 

4)利用soapui來看看webservice某個介面的組成和引數,其中一個註冊介面,如下所示:

一共有6個引數,如果要在Python裡面來傳遞這種引數,如何組裝拼接,接著往下看。

 

5)如何傳遞引數值:

1 t={"channel_id":2,"ip":"129.45.6.7","mobile":mobile ,"pwd":"123456","user_id" :"shabicu8","verify_code":”123456”}#用字典的方式傳值

 

6)如何在Python中呼叫註冊這個介面服務:

1 2 3 4 result=client.service.userRegister(t) #client這個物件 ,呼叫service這個方法,然後再呼叫userRegister這個介面函式,函式裡面傳遞剛剛我們準備 #好的得引數字典 t print(result)#列印返回結果

 

7)最後的返回結果列印如下:

 

其實測試webservice介面有很多種,但是我寫出的這個,相對而言會比較的簡單好理解。大家也可以參考這篇文章,跟官網的說明文件差不多,但是進行了一些詳細的說明:

http://www.chengxuyuans.com/Python/64773.html(推薦)

 

如果有問題,歡迎加群來溝通喲!

============================================ PS ============================================ 
  • 軟體測試技術交流:【 687136491 

  • 個人工作qq:【204893985

  • 功能測試,自動化測試,效能測試,測試開發,測試架構方面的技術問題歡迎與加群與我交流,加群時請備註下:部落格園-華華