接口-数据格式、网络协议

接口-数据格式以及JSON详解

1、接口返回的数据格式(返回三组数据)

Json格式

{error_code:0,

message:"提现成功",

data:[]}


error_code:错误码,0代表成功

msg:对错误码的中文说明

data:真正的返回的数据


Html格式

<html>

<title></title>

<body>

<error_code>0</error_code>

...

</body>

</html>

Xml格式

<?xml?version="1.0" encoding="utf-8">

<error_code>0</error_code>

...

</xml>


JSON详解:

json就是一种数据类型,例:整型,小数,字符串

json只能由两组数据组成

MAP对象,键值对:{key:value,key:value}

或者

数组:{value1,value2,value3}


www.bejson.com,用于校验,格式化json数据,以及接口加密、解密


2、接口协议

1)webservice协议:接口地址http://......?wsdl

基于soap协议,通过wsdl描述

近几年的变更:restful规则,通过最简单的http协议进行传输,也可传输json,xml,html

变更之前:

http://192.168.12.1:8080/addUser

http://192.168.12.1:8080/delUser

http://192.168.12.1:8080/updUser

http://192.168.12.1:8080/selUser

restful:

http://192.168.12.1:8080/User

地址只有一个,根据请求参数区分是哪一种操作(增删改查)


特点:get获取数据,post提交数据,put修改数据,delete删除数据

2)dubbo协议:接口地址以dubbo://......

特点:采用长连接异步通信,适合少量数据的传输,大并发,不适合传输大量数据

3)http协议:接口地址:http://... 80


https=http+ssl安全传输协议 端口:443

http:端口80

3、什么是http协议

http是一个超文本传输协议,主要是用于浏览器和服务器之间交互数据

请求:get、put、post、delete

响应:1XXX响应的信息,2XXX响应成功,3XXX重定向(跳转不传值),4XXX客户端错误,5XXX服务器错误

请求部分包含:

请求行:请求方式、请求地址、协议

请求头:

Accept 客户端可以接收的数据格式

X-Requested-With 异步请求,请求局部刷新的接口

User-Agent 客户端的用户、用户代理

Host 请求的主机的地址

Accept-Enconding 可接收的压缩方式

Connection 保持活跃的,如果不活跃则会断开

Cookie 请求所带的cookie信息,

Content-Length 内容的长度

空一行

响应的内容

4、企业接口测试的流程和方案

1)拿到api接口文档,熟悉接口业务,接口地址,鉴权,入参,出参,错误码

2)接口测试计划和方案

思路:

正例:输入正常的入参,查看接口是否返回成功

反例:鉴权反例,鉴权尾款,鉴权码错误,鉴权码已过期...

参数反例:参数为空,参数类型异常,参数长度异常,错误码的覆盖(是不是黑名单,调用接口的限制)

其他场景:分页异常

编写用例和评审

执行接口测试

输入输出测试报告

1、避免索引错误,如图索引错误,因为索引是从0开始的,发生索引错误时可以打印一下列表长度

need-to-insert-img

need-to-insert-img

2、遍历整个列表

使用for循环,从列表magicans中取出名字存储在magic变量里,重复执行2-3行代码,打印每个名字

need-to-insert-img

对每个人打印一条消息

need-to-insert-img

在for循环下再加一条循环的内容(缩进)

need-to-insert-img

打印一条结束语句(不加缩进)

need-to-insert-img

忘记缩进出现的报错

need-to-insert-img

忘记缩进但不报错,返回的结果中缺少了其他两个人的问候语,只打印了最后一条

need-to-insert-img

不必要的缩进

need-to-insert-img

循环后不必要的缩进,打印多次结束语

need-to-insert-img

遗漏冒号,语法错误

need-to-insert-img

想出至少三种你喜欢的比萨,将其名称存储在一个列表中,再使用for 循环将每种比萨的名称都打印出来。修改这个for 循环,使其打印包含比萨名称的句子,而不仅仅是比萨的名称。对于每种比萨,都显示一行输出,如“I like pepperoni pizza”。在程序末尾添加一行代码,它不在for 循环中,指出你有多喜欢比萨。输出应包含针对每种比萨的消息,还有一个总结性句子,如“I really love pizza!”。

need-to-insert-img

想出至少三种有共同特征的动物,将这些动物的名称存储在一个列表中,再使用for 循环将每种动物的名称都打印出来。修改这个程序,使其针对每种动物都打印一个句子,如“Adogwould makea great pet”。在程序末尾添加一行代码,指出这些动物的共同之处,如打印诸如“Any oftheseanimals would makea great pet!”这样的句子

need-to-insert-img

3、使用函数range(),这个函数从第一个数开始打印,到指定的数字停止(5)

need-to-insert-img

4、使用函数list(),将range()作为函数list的参数,创建一个数字列表

need-to-insert-img

指定步长,每次+2,+到11为止

need-to-insert-img

打印1-10的平方数列表

先建立一个空列表,然后把1-10的值存在变量value里,把value中的一个值进行平方运算,存进空列表,然后从列表末尾开始插入运算后得到的数据,循环打印数组

need-to-insert-img

参考:

https://www.bilibili.com/video/BV17p4y1B77x?from=search&seid=16095959831877891857

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

友情链接更多精彩内容