测试webservice接口的方法有不少种(好比经过SoapUI就不错),可是习惯用Python作测试的朋友,可能下面相对而言会更受欢迎。python
一、准备环境web
安装方式一,离线安装app
webservice接口测试,须要用到suds库,网上百度的各类suds库都无法安装,我这里的Python3.5版本,因此安装不了那些suds库也没有办法在线安装,因此这里就提供一个你们均可用的方法和suds库。ide
1)下载suds库,文件名为: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这3个文件夹,拷贝到Lib下面的site-packages路径(~根目录/Lib/site-packages)下面,就能够正常访问了。
6)若是提示 ModuleNotFoundError: No module named 'version',须要更新一下suds-jurko ,执行pip install --upgrade suds-jurko
安装方式二,在线经过python工具pip安装函数
1)pip install suds
2)pip install suds-jurko
一切准备就绪,能够开始测试啦!工具
二、使用suds库来测试webservice接口测试
1)引入suds库,代码以下:ui
from suds.client import Client
2)建立一个webservice对象,来调用webservice里面的各种接口
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地址里面的全部接口信息:
print(client) #打印所webservice里面的全部接口方法名称,结果以下截图所示:url
4)利用soapui来看看webservice某个接口的组成和参数,其中一个注册接口,以下所示:spa
一共有6个参数,若是要在Python里面来传递这种参数,如何组装拼接,接着往下看。
5)如何传递参数值:
t={"channel_id":2,"ip":"129.45.6.7","mobile":mobile ,"pwd":"123456","user_id" :"shabicu8","verify_code":”123456”} #用字典的方式传值
6)如何在Python中调用注册这个接口服务:
result=client.service.userRegister(t)
#client这个对象 ,调用service这个方法,而后再调用userRegister这个接口函数,函数里面传递刚刚咱们准备好的得参数字典 t
print(result) #打印返回结果
7)最后的返回结果打印以下: