postman使用动态token发post请求小结
最近使用postman做接口测试,感觉挺好用的。
测试中,每次post请求都要携带一个token,token是通过get请求得来的,动态变化的,并且token有有效期的限制。为了避免重复获取token来手工修改给post请求赋值:
1.把token做成环境变量,这样多个post请求可以复用
在post请求中使用环境变量,携带token信息
2.发送get请求获取当前可用token之后,在Tests中给环境变量赋值,这样避免了token过期后,要手工发get,然后再手工修改环境变量的麻烦(官方文档对pm.response对象的解释也有限,摸索了好久!)
repData.data.token 是根据实际返回json数据生成的对象repData的结构写的,不能照搬
3.在body中使用环境变量,用双引号将环境变量包起来,这样才符合json格式
使用postman测试webservice服务,使用post请求,调用 getToday方法
targetNamespace="http://ihis.pub.ws"
方法:<wsdl:message name="getToday"> </wsdl:message>
入参: (xmlns: xml namespace 属性文档中定义一个或多个可供选择的命名空间) <soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:ihis="http://ihis.pub.ws"> <soapenv:Header/> <soapenv:Body> <ihis:getToday/> </soapenv:Body> </soapenv:Envelope> 出参: <soap:Envelope xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/"> <soap:Body> <ns1:getTodayResponse xmlns:ns1="http://ihis.pub.ws"> <return>2021/03/25 14:36:43</return> </ns1:getTodayResponse> </soap:Body> </soap:Envelope>
soap语法点:
一条 SOAP 消息就是一个普通的 XML 文档,包含下列元素:
- 必需的 Envelope 元素,可把此 XML 文档标识为一条 SOAP 消息
- 可选的 Header 元素,包含头部信息
- 必需的 Body 元素,包含所有的调用和响应信息
- 可选的 Fault 元素,提供有关在处理此消息所发生错误的信息
所有以上的元素均被声明于针对 SOAP 封装的默认命名空间中:
http://www.w3.org/2001/12/soap-envelope
以及针对 SOAP 编码和数据类型的默认命名空间:
http://www.w3.org/2001/12/soap-encoding
语法规则
这里是一些重要的语法规则:
- SOAP 消息必须用 XML 来编码
- SOAP 消息必须使用 SOAP Envelope 命名空间
- SOAP 消息必须使用 SOAP Encoding 命名空间
- SOAP 消息不能包含 DTD 引用
- SOAP 消息不能包含 XML 处理指令
官方文档:
https://learning.getpostman.com/docs/postman/scripts/test_examples/
https://learning.getpostman.com/docs/postman/scripts/test_scripts/
soap语法:
https://www.w3school.com.cn/soap/soap_syntax.asp