接口自动化-接口测试初介

前期针对接口测试做了些整理分享,本文主要介绍接口测试基础内容。后续会针对接口自动化(Jmeter,RobotFramework,其实Postman也可以)以及持续集成做相关介绍。

接口测试定义

接口测试是测试系统组件间接口的一种测试。

接口测试主要用于检测外部系统与系统之间以及内部各个子系统之间的交互点。

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

为什么做接口测试

  • 系统复杂度不断上升,传统的测试方法成本急剧增加且测试效率大幅下降;
  • 单一产品之间的测试已不能满足质量需求,产品与产品之间的互动也要保障,跨产品的联调必不可少,之间的桥梁更多是接口;
  • 系统前后端分析是很普遍的,从安全层面来说,只依赖前端进行限制已经完全不能满足系统的安全要求, 后端同样需要进行控制,这种情况下更多是接口验证。
  • 接口测试相对简单且容易实现自动化持续集成,相对UI自动化更加稳定,可以减少人工回归测试人力成本与时间,缩短测试周期,支持快速迭代发版的需求。

接口的分类

  • web service接口,走soap协议通过http传输,请求报文和返回报文都是xml格式的,测试时通过工具soapUI进行测试。
  • http api接口,走http传输协议,通过路径来区分调用的方法,最常用的是get和post请求,其它PUT/DELETER/HEAD等。

GET和POST请求 get请求,直接在浏览器里输入 只要在浏览器里面直接能请求到的,都是get请求。

post的请求,需要借助工具来发送body。

GET请求和POST请求的区别

  1. GET使用URL或Cookie传参。而POST将数据放在BODY中。
  2. GET的URL会有长度上的限制,不能大于2KB,POST的数据则可以非常大。
  3. POST比GET安全,因为数据在地址栏上不可见。
  4. 一般get请求用来获取数据,post请求用来发送数据。

接口测试相关工具

接口测试工具:SoapUI/Jmeter/Postman/等

接口管理工具:RAP/Postman/swagger等

抓包工具:fiddler/Httpwatch/wireshark/Charles等

接口测试过程

需求评审->接口定义->用例设计->测试执行->结果分析

接口测试用例

接口测试用例包含三部分:

  1. 纯接口的校验(主要包含每个参数合法性校验、输入输出是否合法等,基本对照API文档即可)
  2. 基于业务场景的(正常场景、异常场景,一般包含多接口调用)
  3. 接口性能、安全等方面

接口文档规范

通常比较规范的接口文档都应该具备类似下图中的特点: 包含接口名,参数名,参数类型,参数含义说明,取值限制,是否可空等

接口测试注意点

接口不关注内部具体实现---过程,而是关注功能实现---结果。

接口测试质量评估

  1. 业务功能是否完整
  2. 参数验证是否达到要求(边界、类型、长度、格式等) 
  3. 接口异常场景覆盖是否完整      
  4. 性能指标是否满足要求   
  5. 安全指标是否满足要求

原文地址:https://www.cnblogs.com/starlight-yang/p/9904091.html

时间: 2024-10-31 06:15:27

接口自动化-接口测试初介的相关文章

接口自动化:HttpClient + TestNG + Java(一) - 接口测试概述+自动化环境搭建

1.1 接口测试简介 1.1.1 什么是接口测试 开始学习接口自动化测试之前,我们先要来了解什么是接口,以及什么是接口测试. 我们都知道,测试从级别上划分可以分为 组件测试 集成测试 系统测试 验收测试 其中在集成测试这个阶段,一个最主要的测试活动就是接口测试.在组件测试中,我们对单个组件自身的功能性能等指标进行验证,上升到集成测试级别,我们则进一步去验证组件之间的交互和集成.而组件之间的交互,就是通过'接口'来达成的.所以一定程度上,集成测试和接口测试概念是大幅度重叠的.(就组件集成/接口测试

接口自动化:HttpClient + TestNG + Java(二) - 第一个接口测试:get请求

在上一篇中,我们搭建好了HttpClient + TestNG + Java的自动化接口测试环境,这一篇我们就赶紧开始编写我们的第一个接口测试用例. 本篇会对问题解决的思路进行更详尽的阐述. 2.1 确定被测接口 首先一个现实的问题,我们要有一个待测接口来验证我们自动化方案的可行性. 我们可以选择在自己的本地去部署一套待测接口,当然也可以选择公网上的接口去进行测试,这里我们选择后者. 我选定的是apishop这个站点:https://www.apishop.net/ 这个站点提供非常多,种类齐全

接口自动化之Postman+Newman

简介 Postman 使一款可以方便我们调用API的工具,通过Postman 与 Newman结合我们还可以批量运行API达到API自动化测试的目的. Postman 安装 Window 系统需要先安装Chrome浏览器,然后在应用商店找到Postman插件,直接点击安装便可:https://chrome.google.com/webstore/detail/postman/fhbjgbiflinjbdggehcddcbncdddomop?hl=cn 测试GET类型API以豆瓣搜索图书API为例

Jmeter接口自动化参数化 (转)

测试场景: 有个查询城市(大概一百个 )天气预报的接口(需求参考第一课),需要根据不同的citycode,去查询对应城市的天气预报,这种接口该如何去测试呢? 分析需求: 不管是功能测试需求,还是接口测试需求,首先要先学会分析需求,然后设计测试用例.对于上面的一百多个城市天气预报,小伙伴们是如何设计用例的呢? 一百多个城市的天气预报,我不可能一个个去手工测,一是比较耗时间,二是重复劳动.就算你这次一口气测了一百多个,下次版本更新,你做回归测试也得重新测.(也许你会偷懒,只测两三个,但是做测试不要抱

接口自动化框架好文

接口自动化框架好文 2017-04-13 API 自动化测试框架分享 接口测试的一些感悟 HTTP API自动化测试从手工到平台的演变

实现接口自动化初步设想以及实现第一部

最近工作之余一直在想怎么能够提高工作效率,特别是接口测试至一块,后来想到了接口自动化,在长期的测试过程中会经常做接口测试,可是那只是单一的一个接口,那么我们怎么去做批量的接口测试呢?自己设想如下: 1.在一个工作目录下准备几个文件,分别为主程序运行文件,接口地址文本文件,请求参数文本文件,请求参数的值的文本文件 2.主要思维:通过运行主程序,去获取接口地址下的文本文件,再将该地址对应的请求参数和请求参数值对应起来,然后拼接上 3.再通过urllib发送请求到服务器,根据返回的状态码以及返回值来判

Java + Excel 接口自动化

最近项目比较悠闲,想找点事干,写了个 Excel 接口测试的 "框架" 以前用 python 写过一个,这次用 java, 应该说框架都不算,反正就是写了,能帮我解决问题就行. 当然咯,也许会问干嘛那么麻烦直接用 feed4testng, 或者 testng 就行了,没事找事干还专门写个这玩意... 呵呵,就闲的蛋疼! 文笔有限不知道怎么写,直接上代码: 欢迎各位指定,或提出好的意见,总觉得还有很多不好的地方. 结构就这破样了, E 文也不好, 随便捣鼓,开心就好. 哈哈 ExcelU

python写接口自动化框架

代码如下: 1 #!/usr/bin/env python 2 # -*- coding: utf_8 -*- 3 # 获取测试用例文件excel 4 5 import xlrd 6 import json 7 8 9 class CreateExcel: 10 def __init__(self): 11 pass 12 13 @classmethod 14 def open_excel(cls): 15 path = "testcase.xls" 16 workbook = xlr

python接口自动化框架

基于 python 的接口测试框架 接口测试 · jphtmt · 于 5 月前发布 · 最后由 jphtmt 于 4 月前回复 · 3553 次阅读 项目背景 公司内部的软件采用B/S架构,管理实验室数据,实现数据的存储和分析统计.大部分是数据的增删改查,由于还在开发阶段,所以UI界面的变化非常快,之前尝试过用python+selenium进行UI自动化测试,后来发现今天刚写好的脚本第二天前端就改了页面,又得重新去定位元素什么的,消耗大量的精力与时间维护自动化脚本.针对此种情况,对接口测试较为