(1)什么是接口测试
接口测试是测试系统组件间接口的一种测试
。php
接口测试主要用于检测系统内部各个子系统之间
、外部系统与系统之间
的交互。html
测试的重点是检查数据交换
,传递
和控制管理
的过程,以及系统间相互逻辑依赖关系
等。前端
通俗来讲接口测试就是接口提供方、接口调用方之间的交互,及逻辑处理的测试。python
数据交换:注册 数据传递:将注册数据传递到服务器,调用程序,执行数据库sql语句,往数据表中插入数据 控制管理:在程序中设置字段的长度 系统间相互逻辑依赖关系:注册成功以后调用登陆进行登陆;共享充电宝是否收取押金依赖芝麻信用分 接口: 1. GUI:图形用户界面,并非接口测试的重点。 2. API:应用程序接口,接口测试的主要对象。API专门用来提供给其余系统进行调用的程序接口。
Browser/Server、Client/Server架构必然须要前端和服务器进行交互,接口就是它们交互的枢纽。程序员
其本质
就是前台发送一个request(请求)报文给服务器,而后服务器响应返回一个response(响应)报文。咱们对response报文进行分析,判断是否和咱们的预期一致,从而检验业务是否正确实现。web
经过输入看输出
模拟实际场景(服务架构(Java、Python、php)、数据场景(CRUD)、业务场景),对接口进行模拟调用,验证其响应性能、输出结果、异常处理等测试点。面试
HTTP接口测试知识点:sql
考试系统网址:http://182.92.178.83:8088/student/index.html#/login数据库
Request URL(请求地址)
json
URL形式: http[s]://host[:port][abs_path][parameter] 好比: http://182.92.178.83:8088/api/student/user/register
Request Headers(请求头):头信息,包含了报文的描述信息
Accept(接收形式): application/json, text/plain, */* Content-Type(提交形式): application/json Cookie: JSESSIONID=C68ED1A8DA1A3B2CDACC5612F158467D # Content-Type的几种形式: - form-data - application/x-www-form-urlencoded - application/json 好比:{"username":"ctt","password":"123456",age:21,"a":[{"b":123},{"c":456}]}
Request Method(提交方法): GET/POST DELETE/PUT
GET: 获取服务器信息的一些操做。通常用于获取数据 好比: Request URL: http://182.92.178.83:8081/article/all?state=-1&page=1&count=6&keywords= Request Method: GET PS:直接在url后面链接参数,url有长度限制。 POST: 一些提交等操做。通常用于提交数据,注册、上传文件。 DELETE: 通常用于删除操做(物理删除) 好比: Request URL: http://182.92.178.83:8081/admin/category/56 Request Method: DELETE PUT: 跟post功能一致,可是有一个对等加密的过程,好比两人同时提交就会对比谁先提交,执行先提交的那个操做,后提交的不作处理。好比逻辑删除。(逻辑删除:好比将state=0) 好比: Request URL: http://182.92.178.83:8081/article/dustbin Request Method: PUT 这四种形式不管用哪种都能实现对数据库的增删改查,那么为何会分四种呢,它更像是一种约定。
(面试题)get和post的区别❓
Request Parameters(请求参数)
Status Code(响应状态码)
200(服务器响应成功) 404(找不到路径) 500(服务器内部错误)
Response(响应信息)
(2)为何要进行接口测试
接口测试相对于UI来讲,更加稳定;
也能够说接口测试是一种特殊的单元测试;
当一个系统提供了大量的后台服务,有较少或者基本没有页面操做,比较适合开展接口测试;例如:某个系统大概有100多个对外的接口,每次上线,测试人员不得不一个一个验证,此时若是开展自动化,将大大提升回归的效率和测试的覆盖率。
为何接口比UI更加稳定:若是接口响应信息都变了,UI也须要变。
🐒先后端分离,一个接口给多个端使用(web端、app端)
🐷何时作接口测试?
(3)怎样作接口测试
1.接口测试在工做中的流程
准备阶段(20%)
拿到开发的接口文档,并理解每一个接口的参数及含义;
了解被测系统的业务流程。
编写接口测试用例、执行阶段(70%)
测试用例/测试场景执行
测试数据/系统数据收集
分析阶段(5%)
数据汇总/日志分析
测试报告
2.接口测试规范文档
接口功能
URL
支持格式
HTTP请求方式
请求参数
🔑为提升接口测试效率,及TDD(测试驱动开发)模式,前期咱们须要推进开发规范,接口说明文档。
3.如何获取接口(Charles、fiddler)
抓包工具Charles、fiddler,web端浏览器的F12。
(4)接口测试用例的设计
接口测试用例编写要点:
(5)接口测试的流程规范(团队中)