个人技术分享


测试用例设计—基于TPshop前台下单流程

功能型测试

一.设计测试

a,需求分析

1.输入分析 分析项目中要求如:输入长度,类型要求,组成规则,是否为空,是否重复

2.交付分析 判断所有数据正确,有错误给出提示(优化产品)

3.输出分析:前台(是否注册成功),后台(管理员看),数据库数据(+1)反馈

举例商品app注册:

在这里插入图片描述

b.绘制流程图

1.确定业务中操作及执行顺序

		货到付款
			商家,收到前台订单
			商家,确认订单
			商家,确认发货
			买家, 前台确认收货, 付款
			商家, 确认收款
			
		先付款流程
			商家,收到前台订单
			商家,确认订单
			商家,确认发货
			买家, 前台确认收货
			商家, 确认收款

2.按照业务方向进行连线

在这里插入图片描述

3.设计测试用例和发起用例评审

用例评审如何思考:

1.功能->场景->步骤->条件->测试点 (重点先对场景分类,再对每个步骤使用相关的测试方法)

2.融合测试点->推到完整的用例

a.什么时候用等价类和边界值组合: 具有典型输入的功能
注册 登录 具有典型输入的功能

在这里插入图片描述

b.常用方法, 拆分需求形成测试点: 需求 -> 功能点 -> 测试用例设计方法 -> 测试用例 (一个测试点对应至少一条用例)
c.流程图与场景法 (业务流程测试)
前台下单 后台发货
…需求文档存在业务流程
设计测试评审总结
覆盖需求 -> 相关业务 -> 各个角度 -> 精简, 补充 覆盖需求
分析需求 抽取测试点
相关业务: 提到的业务流程 影响到的业务流程
各个角度: 正向 逆向 主流程 分支流程 异常操作
精简,补充: 需求文档 测试策略 业务知识 测试经验

4.执行测试用例,在禅道上记录缺陷

举例:测试用例设计思路

轮播图以及其他功能需求分析图

在这里插入图片描述

非功能性测试

1-兼容性测试
指被测软件在不同的软件/硬件环境下是否能够正常使用
测试关注点:1.操作系统Windows/Linux 2.浏览器 3.屏幕分辨率 4.网络

2-性能测试

关注点 如, 访问项目所消耗的时间
测试依据 (3-5-8s)
小于等于3s:响应时间还不错
3~5s:还能忍受
5~8s忍无可忍
8s~无需再忍
上述内容只是性能测试的其中一个方面, 后续会系统介绍性能测试相关知识

3-易用性测试

测试关注点
1.用户点击次数: 推荐3次内达到用户的目的
2.回车事件处理
3.基于特定用户群体需求考虑 (如, 老年人, 小朋友, …)

4-可维护性测试

测试关注点
软件升级过程: 停服时间, 停服频率等
数据库升级脚本
项目代码的可维护性
自动化测试代码可维护性

5-安全性测试

1.输入数据的安全性
a.敏感信息的遮挡处理
b.输入框中敏感信息做不能复制处理
2.数据传输过程中的安全性
a.请求方法决定敏感信息能不能暴露在地址栏中
推荐用 post 请求方式
b.数据传输过程中需要加密
3.输出数据的安全性
a.数据库存储敏感信息需要加密

面试拓展

登录功能`

1.功能性测试

登陆成功–用户名和密码正确

登录失败–1.用户名或密码错误 2.用户名或密码为空

2.非功能性测试

兼容性:1.操作系统win/Linux 2.浏览器(分辨率(是否自适应) 网络条件) 3.性能:大量用户同时登录时,响应时间测试 4.安全性 (密码要遮挡, 不能复制 地址栏不要显示密码 传输过程要做数据加密 存储敏感数据要加密) 5.易用性:回车事件处理,tab键切换 6.可维护性:元素是否可以统一管理

项目与数据库关系

项目中的数据就是存储在数据库中的,对数据库修改 (增删改查) 会影响数据的显示

项目测试使用数据库的场景

1.验证数据的准确性和完整性 如, 存在截取的展示规则
2.借助数据库进行缺陷定位 如, 用户性别显示有误
3.借助数据库构造测试数据 如, 批量生成各种面值的优惠卷
4.借助数据库数据备份更新 如, 软件升级,可能需要处理历史数据, 需要测试升级的sql脚本, 验证结果