zoukankan      html  css  js  c++  java
  • 接口测试基本理解

    想必大家都做过功能测试,通过业务需求测试功能点是否达到预期(测试用例),一些小伙伴想要了解接口测试就会有一些疑问,接口是什么呢?怎么去做接口测试?接口测试为了实现什么?

    我们一步一步来说明:

    什么是接口?

    接口分为对外接口和对内接口

    对内接口:

    个人理解:程序之间方法的调用,模块之间的交互,比如A开发写好了一个登录接口告诉B开发直接在权限模块调用就可以了。内部接口起到模块之间牵线搭桥的作用。

    对外接口:

    个人理解:就是把client端(客户端)和server端(服务端)联系起来。前端开发和后端各自开发,那怎么把两者连接起来呢,前端语言(比如css,html)后端语言(比如php)两者语言不通啊怎么办,要有一门通用的语言来把它们都联系起来,这就是json(通用数据类型)当然还有其他的语言如xml(现在基本不用了)。json是以key,value形成传输的,也称键值对,具体格式如 {"key1":"value1","key2":"value2"}  。前端要什么数据,我后端通过json就给你什么,从而达到了数据共享的作用。

    比如一个电商系统,我要去买商品,那就需要先登录,然后去搜索商品,当我点击前端搜索按钮的时候,就会调用查询商品的接口,前端代码通过ajax等手段请求后端server并拿到请求去执行sql语句,如果有,返回给前端,前端再展示给用户商品信息,如果没有,也返回没有找到该商品的提示(接口是开发已经写好了的,接口也可以理解成各种操作数据库,我们要做的就是去校验是否请求成功了请求输入的结果是否正确,请求否达到测试用例的预期结果)

    接口的分类有哪些?

    接口分为webserver和http api,http协议最为普遍,而webservice走soap协议,返回xml格式

    什么是接口测试?

    个人理解:接口测试=功能测试

    接口测试就是功能测试,总结了其中两点不同

    1.接口测试需要特定的接口测试用例(如:用例编号,请求接口地址,请求方式,预期结果,实际结果)

    2.接口测试没有页面,通过url请求发送给服务端

    为什么要去做接口测试?

    1.通常功能测试是在前端页面做完之后,也就是基本上进入正式功能测试阶段的时候,而接口测试不是,它是在功能测试之前,测试人员能更早的介入系统中来,一般接口测试能找到80%的问题,有更多的问题会在接口测试中暴露出来,从而减轻开发的负担(更重要的是更早的发现一些严重的问题,如框架不合理等),如果到功能测试去解决,早已为时已晚了。

    2.再比如测试一个商品支付接口,绕过前端请求server,修改其金额变为0元,如果server端没有校验,返回了一个支付成功,那就有问题了,可以随意的购买。所有需要测试人员进行接口测试了

    3.前端页面没有开发完毕,可以先测试接口数据是否正常,剩下的绝大部分问题就是前端的事情了。

    怎么去做接口测试?

    接口测试一般都会有特定的接口文档(因需求而定,有些公司开发可能会给你页面的接口文档),其中包括入参,返回数据,url地址,接口的描述,请求方式

    请求方式:get请求,直接用浏览器访问也可以用指定工具

            post请求,用指定工具这里推荐jmeter或者postman

    接口测试步骤:

    1、需求评审,熟悉业务和需求
    2、开发提供接口文档
    3、编写接口测试用例
    4、用例评审
    5、提测后开始测试
    6、提交测试报告

    http状态码

      在接口测试中查看状态码是必会的一项,返回的结果你一看就知道请求到底成功了没有

    200   请求成功

    3xx 重定向(304访问资源并没有改变,如本地缓存)

    400  语义有误,服务器无法识别,或者参数错误

    401  访问页面需要身份验证,你没有这个权限

    402  预留状态码(空闲)

    403  服务器理解请求,但是没有权限访问这个页面从而不能执行

    404  服务器找不到这个请求下的路径,也就是没有这个页面

    500  服务器内部出现异常

    501  服务器无法支持当前所需求的功能

    502  作为网关或者代理工作的服务器尝试执行请求时,从上游服务器接收到无效的响应。

    503 服务器临时过载或者维护

    504  服务器超时无返回结果

    接口文档  

    拿到的接口文档信息越详细越好,必选,类型,参数名,返回内容,如果没有,可以要求开发补充或者跑去问。

    接口文档是对接口如何使用的文档,当然有许多不足的地方,需要我们通过postman和jmeter按照接口文档的参数进行测试

      版权声明:本文原创发表于 博客园,作者为 RainBol 本文欢迎转载,但未经作者同意必须保留此段声明,且在文章页面明显位置给出原文连接,否则视为侵权。 

  • 相关阅读:
    Backbone.js 1.0.0源码架构分析(一)
    汤姆大叔的博客(深入理解JavaScript系列(2):揭秘命名函数表达式)
    求职之路(拿到百度、美团、趋势科技、华为offer)
    请大家注意这个网站www.haogongju.net
    后缀数组求最长重复子串
    2015阿里在线笔试题求两个字符串的最长子串
    剑指offer42:翻转单词顺序 VS 左旋转字符串(更高效、简便的解法)
    求和为s的连续正数序列
    数组中的逆序对
    求一串字符串的全排列和所有组合
  • 原文地址:https://www.cnblogs.com/RainBol/p/9463317.html
Copyright © 2011-2022 走看看