美文网首页笔记1
接口功能测试的重点,理解接口,你就理解功能测试

接口功能测试的重点,理解接口,你就理解功能测试

作者: kingkings | 来源:发表于2018-06-06 10:18 被阅读0次

    接口功能测试

    接口功能测试:

    1.接口测试类型

    目前主流的有webservice接口(soap协议、rest协议的接口),http/https协议接口

    1. get是从服务器上获取数据,post是向服务器传送数据。

    2. get是把参数数据队列加到提交表单的ACTION属性所指的URL中,值和表单内各个字段一一对应,在URL中可以看到。post是通过HTTP post机制,将表单内各个字段与其内容放置在HTML HEADER内一起传送到ACTION属性所指的URL地址。用户看不到这个过程。

    3. 对于get方式,服务器端用Request.QueryString获取变量的值,对于post方式,服务器端用Request.Form获取提交的数据。

    4. get传送的数据量较小,不能大于2KB。post传送的数据量较大,一般被默认为不受限制。但理论上,IIS4中最大量为80KB,IIS5中为100KB。

    5. get安全性非常低,post安全性较高。但是执行效率却比Post方法好。

    建议:

    1、get方式的安全性较Post方式要差些,包含机密信息的话,建议用Post数据提交方式;

    2、在做数据查询时,建议用Get方式;而在做数据添加、修改或删除时,建议用Post方式;

    2.接口测试请求方式

    目前主要有:get、post,put、delete

    主要了解下get和post区别,这里我就不解释了,问下度娘

    3.接口测试地址

    例如:http://ip:port/项目/访问路径

    由3部分构成 http:协议+ip:你需要访问服务器+port:和服务器通讯端口号+项目:你发布在apache或者tomcat下的项目文件+访问路径:你数据传输到apache下项目里面的那个文件或者哪个类

    4.接口测试请求协议

    soap协议、rest协议,http/https协议

    5.请求和返回的格式

    这个主要是你发送到服务器的请求参数的格式类型,以及服务器返回的数据格式类型

    目前主要的是xml、json格式

    6.请求头:

    一个接口需要包含以下几部分,请求头,请求体,请求行等,

    B/S架构的:能够识别是哪个用户操作,是通过cookie和session跟踪的,来识别身份的

    C/S架构:是通过tooken来识别不同客户身份的

    请求头:客户端请求(Request)或服务器响应(Response)时传递的,位请求或响应的第一行,作用:说明我们发送给服务的请求体格式(Content-Type),客户端接受编码方式(Accept-Encoding),客户端所希望语言(Accept-Language), 客户端接受什么类型的响应(Accept),客户端类型(User-Agent)等,有很多类型,我们通过fiddler抓包后,看下header下的,都是请求头的内容

    7.请求体

    请求体就是我们的请求参数

    例如微信订单查询接口就是xml格式的:

    json格式的:

    {"umid":"xxxx",

    "password":"xxxxx",

    "appid":"xxxxxx",

    "deviceID":"xxxxxx",

    }

    8.接口工具:

    jmeter postman soapui 都可以做接口自动化,接口功能,接口性能

    9.接口功能测试jmeter需求组件

    1.测试计划

    2.线程组

    3.http采样器

    4.HTTP信息头管理器

    5.HTTP Cookie 管理器

    6.察看结果树

    10.接口测试目的:

    测试服务端,通过模拟客户端各种各样的场景,例如正确的请求,来验证服务是否正确处理,模拟错误的请求,服务端是否有容错机制,主要检查返回参数,例如返回码 code ,返回描述:msg,以及返回数据 data

    11.接口需求分析

    接口测试主要针对请求参数做需求分析,是每个参数一个一个去分析的,

    例如:登录接口请求参数

    先分析登录手机号码:

    需要考虑两个,登录成功和失败,主要看用户表里面有没有存在这个用户名

    1.系统存在用户名登录成功

    2.系统不存在用户名登录失败

    3.密码在表里面存在

    4.密码在表里面不存在

    但是这两个是组合测试的,那么你需要把这4种情况组合下测试就可以了

    编写用例那就是

    1.用户名正确,密码正确登录成功  预置条件:用户名和密码在用户表里面存在

    2.用户名正确,密码错误登录失败  预置条,用户在表里面存在,密码在表里面不存在

    3.用户名错误,密码正确,登录失败  预置条件:自己想去吧

    在考虑,字段长度,数据类型,枚举值等

    总体思考点如下:

    12.结果检查

    1.首先需要检查返回参数:

    例如下面返回参数:

    {"errno":0,"msg":"成功","errmsg":"成功","data":{"uid":"3ed6232f-609a-dffe-a8d6-88fbbe875f6c","token":"6200b46b9728e8c0abb2cd3ee89a2630"}}

    返回码:errno 只有0代码成功

    返回描述:msg

    返回数据:data

    这些都需要符合需求规格说明书

    2.在检查其他

    例如,你接口是上传图片,你需要检查服务器上,图片是否归档

    例如,你注册用户,或者充值,你需要检查表里面数据是否插入正确,或者修改正确

    例如,你订单查询接口:

    你需要检查你返回订单数据,都需要从表里面通过sql语句展示出结果和jmeter的返回参数做对比的

    13: 常有的接口:

    一个项目经常有的接口

    1.开户接口

    2.充值接口

    3.修改密码接口

    4.登录接口

    5.短信验证码接口

    6.查询类的接口等

    每个接口的参数自己百度一般哈

    14.http常用的状态码

    当浏览者访问一个网页时,浏览者的浏览器会向网页所在服务器发出请求。当浏览器接收并显示网页前,此网页所在的服务器会返回一个包含HTTP状态码的信息头(server header)用以响应浏览器的请求

    类分类描述

    1**信息,服务器收到请求,需要请求者继续执行操作

    2**成功,操作被成功接收并处理

    3**重定向,需要进一步的操作以完成请求

    4**客户端错误,请求包含语法错误或无法完成请求

    5**服务器错误,服务器在处理请求的过程中发生了错误

    常见状态码:200,302,404,500,408

    相关文章

      网友评论

        本文标题:接口功能测试的重点,理解接口,你就理解功能测试

        本文链接:https://www.haomeiwen.com/subject/zrgvsftx.html