目录

一、前言:什么是接口

二、接口协议以及对应的接口测试工具

三、接口测试如何设计测试用例?

四、接口组成?

五、总结


一、前言:什么是接口

1.接口指的是软件提供给外界的一种服务。作用在于使其内部的数据能被外部进行修改的交互方式。

例如:USB接口,电脑里的数据可以看成是内容数据,而U盘里的数据可以看成是外部数据,那么USB接口的作用就是:电脑和U盘交互数据,也就是使电脑内部的数据能够和外部的U盘交换数据。

例如:微信的提现和充值,就调用银行对外开放的接口,这些接口有权限控制,一般需要鉴权码token才可以访问。那为什么要鉴权码呢?如果没有鉴权码约束,那是不是谁也可以修改银行内部的数据?那还得了,那就真可以定一个小目标了!

2.接口一般来说有两种:一种是程序内部的接口,一种是系统对外的接口。

系统对外的接口:比如你要从别的网站或服务器上获取资源或信息,别人肯定不会把数据共享给你,他只能给你提供一个他们写好的方法来获取数据,你引用他提供的接口就能使用他写好的方法,从而达到数据共享的目的,比如说咱们用的app它在进行数据处理的时候都是通过接口来进行调用的。

程序内部的接口:方法与方法之间,模块与模块之间的交互,程序内部抛出的接口,比如bbs系统,有登录模块、发帖模块等等,那你要发帖就必须先登录,要发帖就得登录,那么这两个模块就得有交互,它就会抛出一个接口,供内部系统进行调用。

二、接口协议以及对应的接口测试工具

1、基于http协议的接口:

http协议又叫超文本传输协议,主要是用于浏览器和服务器之间交互数据,这种接口常使用get和post两种方法请求,基于这种协议开发的接口是目前市面上面最多的!一般使用的接口测试工具有:

Postman

Jmeter

2、基于webService协议的接口

webService是基于soap的通信协议,请求和返回报文一般是xml格式的。一般使用的接口测试工具有:

SoapUI

3、基于Dubbo协议的接口

1、dubbo 缺省协议 采用单一长连接和NIO异步通讯,适合于小数据量大并发的服务调用,以及服务消费者机器数远大于服务提供者机器数的情况

2、不适合传送大数据量的服务,比如传文件,传视频等,除非请求量很低。

3、基于Dubbo协议的接口一般也是使用SoapUI工具进行测试。

三、接口测试如何设计测试用例?

接口测试一般考虑入参形式的变化和接口的业务逻辑,一般设计接口测试用例采用等价类、边界值、场景法居多!

接口测试设计测试用例的思路如下:

1.接口业务逻辑测试?(正例)

接口逻辑测试是指根据业务逻辑、输入参数、输出值的描述,对正常输入情况下所得的输出值

是否正确的测试,也就是测试对外提供的接口服务是否正常工作。

2.模块接口测试?(反例)

模块接口测试是为了保证数据的安全及程序在异常情况下的逻辑的正确性而进行的测试。?

模块接口测试的主要包括以下几个方面?

a.鉴权码token异常(鉴权码为空<没有鉴权码>,错误的鉴权码,过期的鉴权码)。

b.其他参数异常。

1、必填项检查

2、参数的长度、类型、格式异常:

常规参数:(数字、字符串、日期)

参数长度:6-18位。或身份证、电话的长度。

参数类型:数字(精度),字母,中文,带空格的参数,特殊字符。

日期格式:日期:年月日,年月日时分秒,日期格式(包括/,-,:等)。

a.错误码异常覆盖。

b.接口测试其他的关注点

接口有翻页时,页码与页数的异常值测试

数据库的增删改查,比如一个post接口操作完成后,通过列表页接口看下新的数据是否和刚才的post一致

接口返回的图片地址能否打开,图片尺寸是否符合需求

当输出参数有联动性时,需要校验返回两参数的实际结果是否都符合需求。

所有列表页接口必须考虑排序值

所有功能都要考虑兼容旧版本

四、接口组成?

1.接口都有那些部分组成呢?

由接口文档可知,接口至少应有:请求地址、请求方法、请求参数(入参和出参)组成,部分接口有请求头header。

2.header请求头和入参都是发送到服务器他们有什么区别呢?

首先,它们确实都是发送到服务器里的参数,但它们是有区别的,header里存放的参数一般存放的是一些校验信息,比如cookie,它是为了校验这个请求是否有权限请求服务器,如果有,它才能请求服务器,然后把请求地址连同入参一起发送到服务器,然后服务器会根据地址和入参来返回出参。也就是说,服务器是先接受header信息进行判断该请求是否有权限请求,判断有权限后,才会接受请求地址和入参的。

五、总结

感谢每一个认真阅读我文章的人!!!

我个人整理了我这几年软件测试生涯整理的一些技术资料,包含:电子书,简历模块,各种工作模板,面试宝典,自学项目等。欢迎大家点击下方名片加入群聊免费领取,与我一起学习交流。

                                                              

接口测试、接口协议以及常用接口测试工具介绍相关推荐

  1. 接口测试,接口协议以及常用接口测试工具介绍

    一.前言:什么是接口 1.接口指的是软件提供给外界的一种服务.作用在于使其内部的数据能被外部进行修改的交互方式. 例如:USB接口,电脑里的数据可以看成是内容数据,而U盘里的数据可以看成是外部数据,那 ...

  2. [转载]常用CASE工具介绍

    [转载]常用CASE工具介绍 转载自:http://www.cnblogs.com/powerlc/archive/2006/01/12/315959.html   一,概述 今天, 代码变得日益简单 ...

  3. 常用CASE工具介绍

    一,概述 今天, 代码变得日益简单, 在Model的指导下, 思想, 设计, 分析都变得异常重要.企业业务建模工具, 产品非常多, 特别是在MDA日益流行的今天. WorkFlow是典型的业务及流程建 ...

  4. 常用CASE工具介绍 ZZ

    常用CASE工具介绍   一,概述 今天, 代码变得日益简单, 在Model的指导下, 思想, 设计, 分析都变得异常重要.企业业务建模工具, 产品非常多, 特别是在MDA日益流行的今天. WorkF ...

  5. 常用CASE工具介绍 (csnd.net)

    常用CASE工具介绍   一,概述 今天, 代码变得日益简单, 在Model的指导下, 思想, 设计, 分析都变得异常重要.企业业务建模工具, 产品非常多, 特别是在MDA日益流行的今天. WorkF ...

  6. 常用CASE工具介绍 1

    一,概述 今天, 代码变得日益简单, 在Model的指导下, 思想, 设计, 分析都变得异常重要.企业业务建模工具, 产品非常多, 特别是在MDA日益流行的今天. WorkFlow是典型的业务及流程建 ...

  7. [转]常用CASE工具介绍

    常用CASE工具介绍 常用CASE工具介绍 一,概述 今天, 代码变得日益简单, 在Model的指导下, 思想, 设计, 分析都变得异常重要.企业业务建模工具, 产品非常多, 特别是在MDA日益流行的 ...

  8. [转载] 常用CASE工具介绍

    (因为学习ERWin无意发现的此文章,非常不错,转载一篇!) 一,概述 今天, 代码变得日益简单, 在Model的指导下, 思想, 设计, 分析都变得异常重要.企业业务建模工具, 产品非常多, 特别是 ...

  9. Java新手看招 常用开发工具介绍

    Java新手看招 常用开发工具介绍 Java的应用越来越广泛,学习Java的人也越来越多.学过程序设计的人知道,使用Basic进行程序设计,可以使用QBasic.Visual Basic等开发工具:使 ...

最新文章

  1. “因人脸识别错误,我被捕了!”
  2. 打开 计算机 找不到桌面图标,电脑启动后桌面图标不见了怎么办 不显示图标解决办法...
  3. [转]Python测试框架对比----unittest, pytest, nose, robot framework对比
  4. linux网络编程-----项目管理工具-----Makefile
  5. dazhilu飞鸽传书 2013 官方网站
  6. ktv项目小结 9206 随堂
  7. PHP防注入安全代码
  8. FFPLAY的原理(三)
  9. 期待已久的Java 9 今日正式发布,新特性解读
  10. 应用安全-Web安全-越权漏洞整理
  11. 这个为生信学习打造的开源 Python 文字教程真香!!!
  12. 网易数据中台获评工信部2019“十佳大数据案例”
  13. 穷举暴力破解密码(真香版)
  14. Excel公式大全 excel自动求减 15个常用excel函数公式
  15. JS实现聊天接收到消息语言自动提醒(您有新的消息请注意查收)
  16. 【自定义控件】Android仿刮刮乐|刮刮卡|橡皮擦效果
  17. 玻色量子创始人COO马寅出席首届量子计算产业峰会,算力升级迫切呼唤量子计算
  18. 在URL中传递中文的解决方式
  19. Qt之QTableView、QTableWidget
  20. 芯讯通/SIMCOM LTE 模组接入 ThingsCloud

热门文章

  1. window屏幕录制
  2. 洛谷 1144 最短路计数 bfs
  3. win32 - 保存路径对话框(SelectFolderDialog)
  4. 【 产品经理学习笔记 | 巨详细】1.1-1.4 初识产品经理
  5. android之发送短信的方法研究
  6. Js去除路径和文件后缀名
  7. RK987蓝牙机械键盘win和alt键互换
  8. HTML、CSS面试题
  9. Python代码篇-单例模式(五种实现单利方式)
  10. 9.高性能计算 期末复习