什么是接口测试

  接口测试就是针对软件对外提供服务的接口的输入输出进行测试,以及接口间相互逻辑的测试,验证接口功能与接口描述文档的一致性;

  测试的重点是检查数据交互、传递、和控制管理过程以及系统间的相互依赖关系等。

  接口测试不关注界面

接口分为两类

  外部接口:子系统与子系统之间、不同的系统之间(12306APP--支付宝接口)

  外部接口:系统内部,功能的外部调用,如:注册接口、登录接口、订单接口、支付接口;每个接口调用的方式都不一样的;

接口测试的重要性:

  相对于UI测试,接口测试执行速度更快

  相对于UI测试,能更早的发现问题,将BUG控制在项目前期阶段

  相对于UI测试,粒度更细,更能发现底层问题;

  相对于UI测试,发现和解决问题的效费比较高

  接口测试执行速度更快:冒烟测试,回归测试,在postman运行即可;

  从开发到测试时间:编码>单元测试>联调>开发提测>冒烟测试>系统测试;一般功能测试都在开发提测后,这时候发现的问题可能会较多,这样是对测试人员一种不好的,因为需要编写文档,跟开发进行交涉(交涉这个问题不是BUG,这个问题不需要修改等等),所以,我们可以在联调阶段进行借入接口测试,这样,能更早发现问题,解决,而且测试的粒度更细,更加能发现底层问题。

效费示意图:层层递减,从单元测试到接口测试到UI测试,发现的问题越来越少;

接口测试流程如下:

设计接口形成文档>接口信息 > 用例设计 > 接口发包 > 验证结果
    获取接口信息
  • 通过接口文档或抓包来获取接口的基本调用方式和返回
    接口测试用例设计
  • 根据获取到的接口信息,按照接口测试用例设计方法,设计参数和预期返回结果
    执行接口测试:
  • 使用工具或者其他方法,对接口测试用例进行录入并执行
   接口测试报告
  • 获取接口返回的结果,进行解析和验证。并形成测试报告

接口测试工具:

  抓包工具:

    • Fiddler:应用层抓包工具
    • Charles:应用层抓包工具
    • Wireshark:底层协议抓包

  接口测试工具:

    • 工具类:

      • postman
      • jmeter
      • soapui
      • loadrunner
      • ......
    • 代码类:
      • Java:httpclient
      • Python:requests、httprunner

初学阶段,如有不对,欢迎指点          

  

接口(API)测试理念的更多相关文章

  1. 接口API测试和返回值JSON解析的插件

    火狐插件1.   HttpRequest作用:接口API测试例子:http://192.168.10.61:8080/ZHCS/user/loginApp.do?phone=admin&pwd ...

  2. Api测试-为postman自动添加cookie

    使用postman来调试接口,会被buc-sso-csrf等拦截,需要自己挨个添加cookie,但是cookie又有失效时间,所以本篇介绍如何使用插件来自动获取cookie进行接口api测试 一.安装 ...

  3. 让 API 测试变的简单。

    做开发已经四年有余了,之前在接口测试的时候最开始用的自己写的测试类进行测试,后来接触到了 postman 和 swagger ,虽然用起来比自己写的强太多了,但是总觉得差点事儿. 一方面是 postm ...

  4. App开放接口api安全性的设计与实现

    前言 在app开放接口api的设计中,避免不了的就是安全性问题,因为大多数接口涉及到用户的个人信息以及一些敏感的数据,所以对这些接口需要进行身份的认证, 那么这就需要用户提供一些信息,比如用户名密码等 ...

  5. asp.net web api 测试帮助页面建立并测试

    asp.net web api 测试帮助页面建立并测试 现在使用WEB API来开发,越来越流行. 在开发过程中的测试调试,可以使用Fiddler等工具来帮助测试外,还有: 在asp.net 中有种方 ...

  6. 消息队列接口API(posix 接口和 system v接口)

    消息队列 posix API 消息队列(也叫做报文队列)能够克服早期unix通信机制的一些缺点.信号这种通信方式更像\"即时\"的通信方式,它要求接受信号的进程在某个时间范围内对信 ...

  7. FastDFS接口API文档说明

    FastDFS接口API文档说明 时间:2012-03-17 来源:R9IT 作者:R9传奇 一.命令行的上传: 上传命令1. /usr/local/bin/fdfs_upload_file conf ...

  8. API测试自动化——基于CDIF的SOA基本功能(实例篇)

    今天我们通过一些实例来体验一下API的自动化测试,感受一下基于CDIF的SOA的一些基本功能. 传统的测试工具在测试一个API的时候,必须手动填写这个API所需要接收的所有信息,比如一个查询航班动态的 ...

  9. 开源API测试工具 Hitchhiker v0.4更新 - 没有做不到,只有想不到

    Hitchhiker 是一款开源的 Restful Api 测试工具,支持Schedule, 数据对比,压力测试,支持上传脚本定制请求,可以轻松部署到本地,和你的team成员一起管理Api. 详细介绍 ...

  10. 开源API测试工具 Hitchhiker v0.5更新 - 完善细节

    Hitchhiker 是一款开源的支持多人协作的 Restful Api 测试工具,支持Schedule, 数据对比,压力测试,支持上传脚本定制请求,可以轻松部署到本地,和你的team成员一起管理Ap ...

随机推荐

  1. Java的自动装箱

    JDK5的新特性自动装箱:把基本类型转换为包装类类型自动拆箱:把包装类类型转换为基本类型 注意一个小问题: 在使用时,Integer x = null;代码就会出现NullPointerExcepti ...

  2. Java IO基础--File常用操作(递归)

    File中经常会使用递归方法打印属性结构.统计文件夹下文件个数.子文件夹个数以及文件大小,可以作为递归的应用练习. 递归的写法,百度一搜一大堆,这里我使用对javabean方式封装了一下: packa ...

  3. python小白入门之导入指定的模块

    在python中导入模块是通过关键字import进行导入的,下面演示一下,模块的导入,指定模块别名,指定函数别名,调用模块中所有的函数运行结果:  1.模块的导入Study.py文件里面的内容是:形式 ...

  4. 使用pthread进行编程

    使用pthread进行并行编程 进程与线程 进程是一个运行程序的实例:线程像一个轻量级的进程:在一个共享内存系统中,一个进程可以有多个线程 POSIX® Threads: 即 Pthreads,是一个 ...

  5. JVM 真的很难学么?不、只是你“不敢学”而已

    JVM 真的很难学么?不.只是你"不敢学"而已        许多招聘的信息上面都说,要了解jvm.多线程什么的对于 java 程序员来说,这是工作好多年的程序员都不一定能掌握的东 ...

  6. 安装并使用pyecharts库

    在cmd命令行中输入安装命令, pyecharts库的安装命令如下: pip install -i https://pypi.tuna.tsinghua.edu.cn/simple pyecharts ...

  7. mac OS 安装 nvm

    nvm官网 https://github.com/creationix/nvm nvm,node,npm之间的区别 nvm:nodejs 版本管理工具 一个 nvm 可以管理很多 node 版本和 n ...

  8. Git 常见问题汇总

    git reabse 合并多个commit git rebase -i HEAD~{NUM} git rebase -i start end 会进入一个指定区间的commit列表 根据提示进行文本编辑 ...

  9. python 类C数组的两种形式:list -->内容可变, tuple --->内容不可变

    python 中的列表相当与 C 中的数组,列表:list 初始化使用[ ], 元组:tuple 初始化使用(): 一.列表list 1 #!/usr/bin/python  2   3 #list初 ...

  10. localStorage和cookie的跨域解决方案

    原文转自:点我 前言 localStorage和cookie大家都用过,我前面也有文章介绍过,跨域大家也都了解,我前面也有文章详细描述过.但是localStorage和cookie的跨域问题,好多小伙 ...