IT数码 购物 网址 头条 软件 日历 阅读 图书馆
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
图片批量下载器
↓批量下载图片,美女图库↓
图片自动播放器
↓图片自动播放器↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁
 
   -> 开发测试 -> 测试分享之编写测试用例 -> 正文阅读

[开发测试]测试分享之编写测试用例

本文为博主原创,未经授权,严禁转载及使用。
本文链接:https://blog.csdn.net/zyooooxie/article/details/124207914

再过些天,做测试的我 就从业5年整了【2017年6月入行】。

主要工作是做业务测试,所以写好测试用例是很关键的,感觉自己的思路还 ‘挺特别’ ;就来分享下。

【这篇博客所有内容 纯属个人观点】

个人博客:https://blog.csdn.net/zyooooxie

‘我的进化’

说起测试用例,我是 从‘测试用例是啥’,到‘用例评审时,会被开发、产品质疑’,到‘会写一点了’,再到 ‘看别人的用例时,总感觉写的不对劲’,到 ‘反感 对着需求文档抄’。一路走来,升级打怪。

  1. 2017年入行前:根本不知道 测试用例是什么;

刚来SZ时,我叔推荐我 去做测试;0基础转行的我,永远不会忘记 我叔在纸上写下‘测试用例’的一幕。

  1. 2018年:知道 测试用例都有啥内容,要写啥;

入行做了App测试后,测试用例是组长整理、补充的,我的日常工作主要是执行用例、找bug。

  1. 2019年:明白 测试用例要关注‘数据’,要验证‘逻辑’;

换了家公司,要自己 ‘真动手’ 来写用例了。有次评审时,产品经理说:不验证下数据吗?又一次评审时,开发leader说:你说要用脚本来验证,是咋验证呢?

  1. 2021年:想到 测试用例要留意‘异常’,要‘分门别类’;

又换了家公司,版本急+需求多,因为发版前改动多、回归少,前端老是出bug;

  1. 2022年:反思 测试用例可以简略,但准备的数据要‘复杂’;

最近我在做某需求,验证 表里字段值、接口返回值时,用例往往简单十几条,但我实际要测1、2天,就是因为数据要 ‘复杂’。

现阶段 我的测试用例

  1. 工具:现在是用XMind来写。
  2. 正常需求:需求评审+需求文档;写用例。
  3. 优化需求:找相关开发同事、产品了解需求(现场、线上拉会)or 要他们整理的文档,提问是否有特别留意的地方;写用例。
  4. 紧急版本+bug修复:先干活。

用例设计思路

我个人将 用例 分为三种:前端(移动端、管理平台)、后端、接口;

但不是每个需求都这样搞:有些就是纯前端的,有些就是纯后端的。

  1. 前端

用例:简明扼要、只抓重点 不重细节;

  1. 后端

用例:要写的细致;要梳理清楚:业务逻辑、配置、定时任务、表和字段、接口传参和返回值、缓存的key、日志;

  1. 接口

用例:接口并发请求;重复请求;强制请求(无权限访问);

  1. 其他留意点

前端-特殊情形:接口返回值 ‘不正常’时 留意前端的处理;

前端-数据校验:和表的数据、Redis的value 对得上;

后端-结果验证:和后台同事battle,看看谁的结果‘真’;

接口-高危接口:执行边界验证;

压测-数据准备:随机、符合真实逻辑、尽可能多条;

举例

1.商品缓存

开发设计:管理后台上架某商品后,会创建缓存;【此key永不失效、value为商品的详细信息】

用例1:上架某商品,管理后台用状态做筛选、查看表里查此记录、移动端查看此商品+接口、Redis查此key的value+ttl【重点是状态】;

用例2:下架此商品,查看管理后台、表、移动端+接口、Redis【重点是状态】;

用例3:正常兑换此商品1次,库存-1,查看管理后台、表、移动端+接口、Redis【重点是库存】;

用例4:手动删掉Redis的key,移动端重新看此商品,查看管理后台、表、Redis;

用例5:下架修改此商品的某些字段值,查看管理后台、表、移动端、Redis;重新上架,再次查看;

2.填写地址

需求:抽中某实物的用户,填写邮寄地址;【前端使用公共组件,请求接口传参中 有orderNo】

用例1:中实物的用户,移动端填写地址,表里查询填写记录;

用例2:中实物的用户 若已经填过地址,接口请求(使用相同orderNo)再填一次;

用例3:未中实物、没有参与过活动的用户,接口请求(使用他人的orderNo)填写地址;

3.Kafka消息入库

需求:其他外部系统推送Kafka消息,我们消费成功,数据清洗后 入库;

脚本准备:报文的随机生成;

用例1:推送消息成功,数据入库A,表记录的每个字段 按逻辑 校验;

用例2:推送消息成功,查看日志、SQL语句;

用例3:格式错误的报文推送后,数据无法解析,查看日志;

用例4:报文推送失败,数据入库B,查看每个字段;

用例5:报文的某些字段缺失,数据会被过滤;查看日志,不入库;

3个例子也是只讲一点思路,没法太细致来说;
我个人觉得,测试用例多数都会涉及到数据校验、缓存、接口请求;倘若从业者只会参考需求文档写写,(不管从业多久、业务多熟、技术水平多高)未免太弱鸡了吧。

本文链接:https://blog.csdn.net/zyooooxie/article/details/124207914

交流技术 欢迎+QQ 153132336 zy
个人博客 https://blog.csdn.net/zyooooxie

  开发测试 最新文章
pytest系列——allure之生成测试报告(Wind
某大厂软件测试岗一面笔试题+二面问答题面试
iperf 学习笔记
关于Python中使用selenium八大定位方法
【软件测试】为什么提升不了?8年测试总结再
软件测试复习
PHP笔记-Smarty模板引擎的使用
C++Test使用入门
【Java】单元测试
Net core 3.x 获取客户端地址
上一篇文章      下一篇文章      查看所有文章
加:2022-05-05 11:49:55  更:2022-05-05 11:49:59 
 
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁

360图书馆 购物 三丰科技 阅读网 日历 万年历 2024年11日历 -2024/11/17 22:20:21-

图片自动播放器
↓图片自动播放器↓
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
图片批量下载器
↓批量下载图片,美女图库↓
  网站联系: qq:121756557 email:121756557@qq.com  IT数码