接口文档和编写接口测试用例

news/2024/11/20 16:09:47/文章来源:https://www.cnblogs.com/qq3074699547/p/18558617

一、熟悉接口文档和分析接口
1、发送接口文档
2、分析接口文档
3、了解需要测试接口,分析需求文档

接口请求参数:

接口返回参数:成功

整理接口:(自己项目有哪些借款)
cms项目接口:查询接口,登录接口,添加用户接口,用户管理接口,文章管理接口,删除用户接口,删除栏目接口,修改密码接口
保险项目接口:登录接口,车牌信息接口,投保接口,生成保单接口,
银行项目接口:借款接口,提现接口,审批接口,绑卡借款,放款接口,还款接口,逾期接口
接口设计的思路:

接口测试测试点
(1)业务功能测试
a、正常测试
(1)全部必填参数
(2)全部参数(必填+非必填)
(3)参数组合(必填+部分非必填)
(4)传参格式:x-www-urlcode、json 格式测试:传递json串 ;传递非json格式情况 error code
(5)默认值测试: 很多情况一些非必填的参数会有默认值
(6)非空测试:无论是必传的和非必传的参数,传递的key是正确的,但是value=null,这时候返回结果是否正确
(7) 异常测试
a、数据异常:长度、类型、是否为空、不满足业务等(注意:与功能测试一模一样)
b、参数异常:多参、少参(少参一般针对都是必填项)、无参、错误参数等
c、数值限制:分数限制、金币限制、等级限制等等。
(8)检查接口的容错性,假如传递数据的类型错误时是否可以处理
(9)接口参数的边界值。例如,传递的参数足够大或为负数时,接口是否可以正常处理

性能测试:
a、接口响应时长
b、接口吞吐量
c、接口并发数(接口最大并发数、接口最佳并发数)
d、服务器资源使用率
e、接口稳定性测试

安全测试
a、敏感数据是否遮挡
b、敏感数据是否可以复制
c、敏感数据是需要加密的
d、敏感数据加密需要一定的难度(不容易被暴力破解)
2、比如权限认证、鉴权
3、SQL注入
4、绕过验证,比如提交订单时,在传递商品价格参数时,修改商品价格,就要看后端有没有验证了。或者我支付时,抓个包将订单金额一改,如果能以我改后的金额支付,那这个借口就有问
5、绕过身份验证,就是某个功能只有有特殊权限的用户才能操作,那我传递一个普通的用户,是不是也能操作呢
6、 密码安全规则,设置密码时复杂程度的校验。
7、鉴权码 token 异常(为空、没有、错误、过期)

异常测试点:
1、提交时快速多次点击、频繁添加/删除
2、幂等校验(或者重复提交)
消息重发:目前很多提交都是异步提交,如短信发送,一般点击发送就会提示发送成功。但实际是否发送成功,后续会有系列处理机制,根据消息的一些本身机制,后续处理过程中会进行重发机制。
试方法:可在终端最后一步,或中间环节人为触发多次发送。如:在消息队列中重发,多次补收同一内容的报文等。
3、连接超时或者失败时需重试
4、缓存测试(缓存失效、缓存溢出、缓存溢出)
DB同步性: 如对商品重要属性进行了新增、编辑(价格、库存等重要信息)、删除时,如果应用了缓存机制,那测试过程中就需要关注DB的修改是否同步到缓存中、数据库的字段进行更新缓存中的存储结构是否进行更新等
5、与第三方交互
与第三方的交互一般都是mq交互或服务调用,所以在测试过程中会重点关注幂等校验以及服务调用超时的情况。
测试方法:
重复发送mq
使用Yapi平台对接口进行mock 、修改服务超时响应时间、模拟第三方服务返回异常

接口文档
1、接口文档是谁提供?
开发
2、如何定位一个bug是前端bug,还是后端bug?
前后端都有接口
(1)前端bug,请求参数正确,响应参数也是是正确,而页面显示错误,就是前端 bug
(2)后端bug,请求参数正确,响应参数是错误,后端逻辑有问题,定位为后端bug
3、接口文档包含哪些内容?
(1)版本记录
(2)接口目录
(3)目录
(4)简介
(5)每个接口的组成部分
a.请求方式 post或get
b、协议 https,http
c、接口路径 (url)ip和域名,根据环境来填写)
d、请求参数: 键,值,参数类型,参数选填项
e、请求头:请求类型
f、响应参数:状态码,响应时间、响应体,键值对
4、接口设计用例?
(1)一条正常接口用例(把接口用例调通)
(2)在考虑多条异常用例(无限)一般5-6条
(3)特殊情况的接口可以和开发沟通

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.hqwc.cn/news/837381.html

如若内容造成侵权/违法违规/事实不符,请联系编程知识网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

python代码实现RNN, LSTM, GRU

安装torch, transformers, loguru(本代码实现为下方版本,其余版本实现可比葫芦画瓢自行摸索)pip install torch==1.13.1 transformers==4.44.1 numpy==1.26.4 loguru -i https://pypi.tuna.tsinghua.edu.cn/simple/RNN:Recurrent Neural Network,网络结构如下图所示:import nu…

ChatGPT国内中文版镜像网站整理合集(2024/11/20)

ChatGPT 镜像站的用途 镜像站(Mirror Site)ChatGPT镜像网站是指通过复制原始网站内容和结构,创建的备用网站。其主要目的是在原始网站无法访问时,提供相同或类似的服务和信息。​ 一、ChatGPT中文镜像站 ① yixiaai.com 支持4o以及o1,支持MJ绘画 ② chat.lify.vip 支持通用…

鸿蒙NEXT开发案例:随机数生成

【引言】 本项目是一个简单的随机数生成器应用,用户可以通过设置随机数的范围和个数,并选择是否允许生成重复的随机数,来生成所需的随机数列表。生成的结果可以通过点击“复制”按钮复制到剪贴板。 【环境准备】 • 操作系统:Windows 10• 开发工具:DevEco Studio NEXT Be…

13、优化器_(执行计划、统计信息)_1

执行计划 一个SQL文本,经过解析,经过解析之后,oracle发现有很多种执行方案,然后oracle在这多种执行方案中,选出一种oracle认为最优的一种执行方案,来作为执行计划,然后oracle按照执行计划一步步去执行 因为oracle有多种的执行方案,但是,有的执行方案快,有的执行方案慢…

12、表的访问方式(索引)_2

表的访问方式 以t1表为例来看表的访问方式 首先创建了一个用户,建立了一张表t1,按照object_id列排序的: SQL> create user u1 identified by u1; -- 创建用户u1 User created.SQL> grant connect,resource,dba to u1; -- 给u1授权 Grant succeeded.SQL> conne…

第十一课 接口测试之postman11.1

一、介绍postman Postman是一个网页调试工具,也可以调试css、html等 Postman的操作环境 环境:Postman Mac、Windows X32、Windows X64、Linux系统、 postman 浏览器扩展程序、postman chrome应用程序 Postman下载:https://www.postman.com/downloads/ 二、postman安装:略 三…

蠢就是坏,坏就是蠢

如题看着如今的社会乱象,我们不禁想:是什么人让我们的社会变成这样? 我们下面来讨论这个问题。 请注意,我们将阻碍社会发展的反动行为定义为坏的,行使这种行为的人定义为坏人。 而我的观点则如标题所示。 第一种 “蠢” 是自以为是,也就是以为自己无所不知,不认同或忽略…

为什么你的工作总是越忙越乱?答案可能出乎意料!

信息过载与任务混乱:现代职场的隐形敌人信息洪流对现代工作的挑战在现代社会,无论个人还是团队,几乎每天都要面对海量的信息。邮件、聊天工具、项目需求文档,甚至口头传递的信息,都让我们感到“时间不够用,信息处理不过来”。这种现象在企业和团队中尤为严重: 信息分散:…

CF1102(*^▽^*)

红黄橙黄绿绿,已完成A.Integer Sequence Dividing CF原题链接 题目大意: 给出\(n\),要求把序列\(1,2,…,n\)分成两个集合,输出两个集合的和的最小差值。\((1\leqslant n\leqslant 2\times 10^{9})\) 解题思路: 我们坚信它是可以分成我们想要的两个差值最小的集合的 差值一…

Qt - 多线程之线程的开始、暂停、恢复、停止

示例1 在Qt中,可以使用QThread的线程控制功能来暂停和恢复一个线程。这里是一个简单的例子:#include <QThread> #include <QDebug>class WorkerThread : public QThread {void run() override {qDebug() << "Thread is running";// 执行一些任务…