第十二课 接口文档和编写接口测试用例(12.1)

news/2024/11/20 20:11:52/文章来源:https://www.cnblogs.com/weiyus1916/p/18559160

一、熟悉接口文档和分析接口

1、发送接口文档

2、分析接口文档

3、了解需要测试接口,分析需求文档

接口请求参数:

接口返回参数:成功

接口返回参数:失败

================================================================================

整理接口:(自己项目有哪些借款)

cms项目接口:查询接口,登录接口,添加用户接口,用户管理接口,文章管理接口,删除用户接口,删除栏目接口,修改密码接口

保险项目接口:登录接口,车牌信息接口,投保接口,生成保单接口,

银行项目接口:借款接口,提现接口,审批接口,绑卡借款,放款接口,还款接口,逾期接口

=================================================================================

接口设计的思路:

接口测试测试点:
业务功能测试

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、接口稳定性测试

======================================
安全测试

1、敏感数据是否加密

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)特殊情况的接口可以和开发沟通

5、接口用例如何编写?

@--

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

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

相关文章

校园防欺凌系统 AI语音监测求救打架行为系统

校园防欺凌系统 AI语音监测求救打架行为系统利用在校园内的宿舍、卫生间、楼梯角等隐蔽位置安装的AI智能语音报警终端,校园防欺凌系统 AI语音监测求救打架行为系统对这些音频进行实时分析,识别出“老师救命”、“别打我”、“有人打我老师”等关键词,就会立即触发报警机制。…

blog-2

前言 在过去的几周内,我们完成了答题程序-4, 家居强电电路模拟程序-1以及 家居强电电路模拟程序-2的练习,涉及多个知识点和编程技巧。整体来说,这三次题目集共包含了7道题目,题目难度逐步增加。 题量: 答题程序-4(3道题), 家居强电电路模拟程序-1(3道题), 家居强电电…

dir()和help()函数

dir()是 Python 中的一个内置函数。它主要用于返回一个模块、类、对象等的所有属性(包括方法、变量等)的列表。这个函数在探索新的模块或者对象的功能时非常有用。 help()也是 Python 的一个内置函数。它用于查看对象(如函数、模块、类等)的详细帮助文档。这个文档包括对象…

11.20闲话-存档

呜呜呜存档 参考使用没有存档的软件,就像吃饭不给容器一般。故存档必然是极为重要的。 下面介绍Unity的几种存档方式。 代码出处 Part.1——PlayerPrefs 应该是最简单的存档方式。 但局限性也是显然的,只能存储int, float, string 三种类型,就像在文件中存储了三个map <s…

Integrating Streamlit and Langchain data analysis agent-entrance

url:https://www.cnblogs.com/devcxx/p/18550789 一、Streamlit introduce Streamlit is an open-source Python library for quickly building data visualization and interactive web applications. It is specifically designed for data scientists and engineers, using…

WPF的Popup自动显示隐藏

简单实现鼠标移过Popup自动显示和隐藏的功能; 在xaml.cs中实现,首先创建一个定时器,设置300ms的延时:1 DispatcherTimer timer;2 3 public Function1View()4 {5 InitializeComponent();6 7 timer = new DispatcherTimer()…

WPF绑定枚举并且显示特性文本

一、文件结构 二、文件内容 FlattenMethodEnum.cspublic enum FlattenMethodEnum{[Description("单点")]SinglePoint = 0,[Description("平均")]Average = 1,} }EnumBindingSourceExtension.csusing System.Windows.Markup; using System.Diagnostics.Cod…

【知识库搭建】提高企业知识管理和服务效率

在当今信息爆炸的时代,企业知识管理的重要性日益凸显。有效的知识管理不仅能够促进内部信息共享,提升团队协作效率,还能增强企业的核心竞争力。本文将探讨如何通过搭建知识库系统,特别是利用HelpLook工具,优化企业知识管理和服务流程,从而提高企业运营效率。 一、知识库搭…

高级程序语言设计第八个个人作业

2024高级语言程序设计:https://edu.cnblogs.com/campus/fzu/2024C 高级语言程序设计课程第五次作业:https://edu.cnblogs.com/campus/fzu/2024C/homework/13304 学号:102400231 姓名:袁志华 作业 第11章 12367第12章 12389

人工智能之机器学习基础——贝叶斯(Bayesian Methods)

贝叶斯分类器 贝叶斯分类器是一类基于贝叶斯定理的统计学习方法,广泛应用于分类问题。其核心思想是通过计算后验概率 P(y∣x),将输入样本 x 分类到具有最大后验概率的类别。 1. 贝叶斯定理 贝叶斯定理是概率论中的基本法则,用于描述条件概率的关系: 其中:P(y∣x):在已知…

2024.11.20 NOIP模拟 - 模拟赛记录

异或(xor) 每次所加三角形的范围如图所示:这道题做法较多,我是通过两组差分与前缀和来做的。 首先需要一个三角形差分,使每一次在差分数组中修改时,影响到的范围是一个三角形,比如这样(红色点为 \((x,y)\),即 \((r,c)\)):假设我们真正需要修改的三角形是橙色部分:那…