python web service,web接口开发与自动化测试 基于python语言

  python web service,web接口开发与自动化测试 基于python语言

  1.使用Python从suds.client导入客户端访问WebService远程方法

  从suds.transport.https导入HttpAuthenticated

  t=HttpAuthenticated(用户名=admin ,密码=123 )

  test=Client( http://XXX . XXX . xx . XXX:8080/web service/ws/DeviceManageService?wsdl ,transport=t)

  打印测试#查看远程方法

  print . service . getDeviceList()# getDeviceList为WebService提供的接口

  2.构建WebService接口所需的参数

  1)简单调用,client=不带参数的客户端(url)

  client.service.fun()

  2)传递对象参数(方法1)

  再看远程方法,发现好玩接口的参数类型是paramType,有两个属性,P1和P2,client=Client(url)

  m=client . factory . create( param type )

  m.p1=param 1

  m.p2=param 2

  结果=client.service.fun(m)

  打印结果

  3)传递对象参数(方法2)客户端=客户端(url)

  m={p1:param 1 , p2:param 2}

  print client.service.fun(m)

  4)suds将异常打包成元组并输出client=Client(url)

  客户端=客户端(url,故障=假)

  result=client . service . funin( error param )

  打印结果

  3.理解WebService的WSDL描述文件

  1)检查WebService提供的接口。

  label: operation中的名称表示提供的接口名称,每个接口包含两部分:wsdl:input和wsdl:output,可以理解为输入消息和输出消息。

  Wsdl:input相当于接口的输入参数,wsdl:output相当于接口的返回结果。

  2)检查WebService提供的接口的参数

  在wsdl:message标记中查找与接口同名的项目,例如:

  关键词是element=tns:getDevice ,name=parameters

  继续查看xs:complexType标记中与 tns:getDevice 冒号后的字符匹配的标记,例如:

  xs:element标签描述了参数的内容,也就是参数的属性。这里,deviceId是必需的,参数类型是string。

  即接口原型为getDevice(字符串deviceId)。

  3)如果xs:element标签中type的值包含 tns:前缀(如type=tns:param ),则说明这个参数是复合结构,需要继续寻找xs:complexType标签中与“param”匹配的标签项,以此类推。

郑重声明:本文由网友发布,不代表盛行IT的观点,版权归原作者所有,仅为传播更多信息之目的,如有侵权请联系,我们将第一时间修改或删除,多谢。

留言与评论(共有 条评论)
   
验证码: