概念定义:

1、接口:程序内部的接口及系统对外的接口

1)程序内部接口:方法与方法之间,模块与模块之间的交互

2)系统对外的接口:从别的网站或服务器上获取资源或信息,引用其提供的接口就能使用他写好的方法,从而达到数据共享的目的。现在测试的都是对外的接口

2、接口分类:webservice接口和http api接口

webservice接口走soap协议通过HTTP传输,请求报文和返回报文都是用xml格式,在测试的时候都用通过工具才能进行调用,测试。

HTTP API接口走http协议,通过路径来区分调用的方法,请求报文都是key-value形式的,返回报文一般都是json串,有get和post等方法,这也是最常用的两种请求方式。

3、前端和后端

前端:对于web端来讲,使用的网页,打开的网站,都属于前端,都是html、css写的;对于APP端,android或者object-C(开发ios上的app)开发的,它的作用就是显示页面,让我们看到漂亮的页面,以及做一些简单的校验,比如说非空校验===客户端

后端:在页面操作的业务逻辑,功能由后端负责===服务端,server端

前后端通过接口进行交互

了解更多测试知识访问如下链接:

https://edu.csdn.net/course/detail/22948

https://edu.csdn.net/lecturer/3215

https://edu.csdn.net/course/detail/30898

https://edu.csdn.net/course/detail/25768

4、接口测试

接口测试就和普通功能测试没什么区别,区别就是功能测试是在页面上点点点,在页面上输入值,提交数据看结果,而接口测试没有页面,通过接口规范文档上的调用地址、请求参数,拼接报文,然后发送请求,检查返回结果。

接口测试流程

需求评审,熟悉业务和需求 --->开发提供接口文档 --->编写接口测试用 ---> 用例评审 ---> 提测后开始测试 ---> 提交测试报告

接口测试规范文档

内容至少包括:

1)接口说明
2)调用url
3)请求方法(get\post)
4)请求参数、参数类型、请求参数说明
5)返回参数说明

6)状态码说明(不是必须)

get与post请求

1、url?param=value¶m2=value 这种是最简单的一种,问号前面是请求url,后面是请求的参数名和参数值,多个参数用&来连接

2、还有一种就是入参是json串的,那就不能拼接参数了,需要借助工具来完成比如postman

3、get请求和post请求

1)get请求的话,直接在浏览器里输入就行了,只要在浏览器里面直接能请求到的,都是get请求;post的请求,得借助工具来发送。

2)get请求他没有请求体,只有请求头,get请求的参数只能写在url里面,或者cookie里面。
      post 有请求头和请求体,参数放在请求体里面。

3)一般get请求用来获取数据,post请求用来发送数据

HTTP状态码

每发出一个http请求之后,都会有一个响应,http本身会有一个状态码,来标示这个请求是否成功,常见的状态码有以下几种:
1、200 2开头的都表示这个请求发送成功,最常见的就是200,就代表这个请求是ok的,服务器也返回了。
2、300 3开头的代表重定向,最常见的是302,把这个请求重定向到别的地方了,
3、400 400代表客户端发送的请求有语法错误,401代表访问的页面没有授权,403表示没有权限访问这个页面,404代表没有这个页面
4、500 5开头的代表服务器有异常,500代表服务器内部异常,504代表服务器端超时,没返回结果。

cookie & session

1、cookie  存在你本地的一个键值对。  如 ACB sdfjsdkf342342
2、session 存在服务端的一个键值对。如 ACB sdfjsdkf342342

登陆时将账号等写入cookie 并向session写入相同的数据,在网页跳转等,cookie会自动发送数据给服务端进行比对,比对一致,则跳转的页面也是登陆状态,即校验登陆状态。

3、接口签名:为了防止别人恶意刷请求。一个加密之后的字符串,在地址后加一个自己规则的加密字符。

了解更多测试知识访问如下链接:

https://edu.csdn.net/course/detail/22948

https://edu.csdn.net/lecturer/3215

https://edu.csdn.net/course/detail/30898

https://edu.csdn.net/course/detail/25768

接口测试基础知识学习相关推荐

  1. 计算机二级二叉树基础知识,2017年计算机二级公共基础知识学习教程:树与二叉树...

    (六)树与二叉树 1.树的基本概念 树是一种简单的非线性结构.在树结构中,数据元素之间有着明显的层次结构.在树的图形表示中,用直线连接两端的结点,上端点为前件,下端点为后件. 在树结构中,每一个结点只 ...

  2. Python 基础知识学习笔记——NumPy

    Python基础知识学习笔记--NumPy 与 matlab 优秀的矩阵运算类似,python 提供了 numpy 库,这对熟悉 matlab 的用户来说非常友好.向量.矩阵和多维数组是数值计算中必不 ...

  3. Python 基础知识学习笔记——OpenCV(1)

    Python 基础知识学习笔记--OpenCV(1) OpenCV是一个开源的跨平台计算机视觉和机器学习软件库,它轻量而且高效,被广泛的使用. 整理一下OpenCV学习笔记,以防忘记. 文章目录 Py ...

  4. Python基础知识学习笔记——Matplotlib绘图

    Python基础知识学习笔记--Matplotlib绘图 整理python笔记,以防忘记 文章目录 Python基础知识学习笔记--Matplotlib绘图 一.绘图和可视化 1.导入模块 2.一个简 ...

  5. python基础知识学习笔记(2)

    python基础知识学习笔记(2) 整理一下python基础知识,以防忘记 文章目录 python基础知识学习笔记(2) python简洁的一行代码 python简洁的一行代码 1.交换两个变量 # ...

  6. python基础知识学习笔记(1)

    python 基础知识学习笔记(1) 总结一下Python基础知识,以防忘记. 文章目录 python 基础知识学习笔记(1) 一.起步 1.python安装与编译环境 二.变量和简单数据类型 三.列 ...

  7. qt checkbox 选中事件_Qt基础知识学习

    Qt基础知识学习 Qt C++ SQLite ★★★★★   Qt · 简介 Qt是由Qt Company开发的面向对象的跨平台C++图形用户界面应用程序开发框架. 前期 · 准备 01 辨析Qt(开 ...

  8. oracle数据库基础知识总结,oracle数据库基础知识学习笔记

    oracle数据库基础知识学习笔记 一.oracle数据库类型: Char:  字符型(最大长度2000,定长.不足时以空格补充) Varchar2:字符型 最大长度 4000,变长,实际长度由存储的 ...

  9. Linux操作系统基础知识学习

    Q1.什么是GNU?Linux与GNU有什么关系? A: 1)GNU是GNU is Not Unix的递归缩写,是自由软件基金会(Free Software Foundation,FSF)的一个项目, ...

最新文章

  1. 在BSP的.bat文件下設置全局變量方法
  2. 你不知道的javascript事件
  3. Queue(队列 C++模版实现)
  4. 快速入门python_一天快速入门 Python
  5. 用 Go 重构 C 语言系统,这个抗住春晚红包的百度转发引擎承接了万亿流量
  6. vue-cli脚手架npm相关文件解读(7)dev-server.js
  7. DarkMode 设置关闭 iOS 13, 适用于 XCode 11, XCode 10
  8. 向日葵远程控制软件linux版安装
  9. 感知层在物联网中的重要性
  10. excel常用操作收集
  11. 利用JavaScript完成页面定时弹出广告
  12. python web flask 插件_Python WEB框架之Flask
  13. Camunda流程引擎及表结构认识
  14. 【可视化开发】数据大屏可视化技术汇总
  15. Android调用系统相机拍照并保存到指定位置
  16. Java面向对象编程——继承
  17. 迷你播放器--第一阶段(4)--内存卡检索不到音乐的错误处理--程序内部空间管理
  18. 西乔,那位集才华与美貌于一身的女纸,IT男的梦中女神,后来怎么样了?
  19. 埃森哲杯第十六届上海大学程序设计联赛春季赛暨上海高校金马五校赛A题Wasserstein Distance
  20. CC00011.NavigationLog——|DOS命令|

热门文章

  1. java读取文件中的数组中_使用java中的数组从文本文件中读取关键字
  2. Veeam FAQ系列转载(四)
  3. Redis学习总结(13)——分布式之数据库和缓存双写一致性方案解析!
  4. Mysql学习总结(59)——数据库分库分表策略总结
  5. linux开机黑屏时间长,Linux 开机进入紧急模式,出现黑屏 grub 的参考解决方案
  6. java中的static类_再议Java中的static关键字
  7. 第二章 寄存器 章节小结
  8. 经典Python面试题之Python基础篇
  9. ()IT 职场经验)一位10年Java工作经验的架构师的经验分享,感觉很受用。
  10. 中国光伏产业将面临何种形势?