测试用例设计案例
假如有一个预约口罩的功能,
- 每天只能预约一次;
- 每天晚上 8 点公布前一天的预约结果;
- 每次预约时需要提交一个表单,表格里包括身手机号,身份证号等信息。你针对这个来说一说有哪些测试点。越多越好
[ 测试点 ]
预约次数,是否准时公布结果,公布结果是否正确,表单是否必填,手机号长度、号段、特殊字符,身份证长度,末尾最后一项,是否支持剪贴板操作,输入过程中是否支持tab enter 键;提交按钮是否正常响应,预约信息是否添加数据库,预约人数限制,预约地区限制,预约条件、身份认证等等
QQ 文件传输测试用例
- 传输成功
- ⽂件直接拖到对话框,点击发送
- 点击传送⽂件按钮,选择⽂件,点击发送
- 传送汇总显示进度条
- 传送显示⽂件名字,以及⽂件⼤⼩
- 给⼀个⽤户传输多个⽂件
- 同时给不同⽤户传输⽂件(相同⽂件和不同⽂件)
- 本地打开的时候,可以传送⽂件
- 接收成功的默认路径
- ⽂件接收后,是否正常
- 是否可以更改保存路径
- ⽂件传输时,不影响其他功能
- 接收⽅在线,不在线,离线⽂件,好友,⾮好友(临时会话
- 传输失败
- 点击取消,可以取消⽂件发送
- 接收⽅,拒绝接收
- 直接关闭对话框,有提示,有⽂件在传输
- ⽂件-⽂件夹,⽂件夹多层,空⽂件
- ⽂件⼤⼩的边界值
- ⽂件名称
- 普通⽂件
- 含有特殊符号的⽂件
- ⽂件名空,空格,纯中⽂,中英混合,纯英⽂,含有标点符号
- ⽂件格式
- exe⽂件,txt,doc,pdf等
- 图⽚、视频、⾳频、压缩⽂件、⽂件夹、病毒⽂件
- 界⾯测试
- 界⾯美观、易⽤
- 按钮位置符合规范以及正确
- 提示语是否正确
- 其他测试
- 弱⽹情况传输
- 上传中断⽹
- 上传⽂件,把源⽂件删除
一个有广告的纸杯子,请设计测试用例?
- 测试项目:杯子
- 需求测试:查看杯子使用说明书
- 界面测试:查看杯子外观
- 功能度:用水杯装水看漏不漏;水能不能被喝到
- 安全性:杯子有没有毒或细菌
- 可靠性:杯子从不同高度落下的损坏程度
- 可移植性:杯子再不同的地方、温度等环境下是否都可以正常使用
- 兼容性:杯子是否能够容纳果汁、白水、酒精、汽油等
- 易用性:杯子是否烫手、是否有防滑措施、是否方便饮用
- 用户文档:使用手册是否对杯子的用法、限制、使用条件等有详细描述
- 疲劳测试:将杯子盛上水(案例一)放 24 小时检查泄漏时间和情况;盛上汽油(案例二)放 24 小时检查泄漏时间和情况等
- 压力测试:用根针并在针上面不断加重量,看压强多大时会穿透
- 跌落测试: 杯子加包装(有填充物),在多高的情况摔下不破损
- 震动测试: 杯子加包装(有填充物),六面震动,检查产品是否能应对恶劣的铁路\公路\航空运输
- 硬度:是否达到设计标准。
- 装载能力:在杯子内分别装入少量的、半杯的、满杯的,看其装载量是否达到设计标准。
- 装载种类:开水(是否产生异味)、温水、冷水、冰水、咖啡。。。
- 界面测试(UI 测试)。
- 看其形状、大小设计是否适合人方便拿起。
- 外观是否吸引人(广告嘛),赏心悦目。
- 带广告的图案沾水受是否掉色、模糊。
- 易用性测试。
- 看其形状、大小设计是否适合人方便拿起。
- 残疾人士用此杯去喝水的容程度。
- 杯子设计是否上大下小,在运输过程中可以套在一起有效利用空间,在使用时也容易拿开。
- 稳定性测试(24 X 7 测试)。装入液体后记录其多少以后漏水。
- 安全性测试。杯子所用的材料(包括纸基、涂层和广告颜料)是否符合食品卫生标准,在内外温度等环境因素下是否会与所盛各种饮料相反应,而产生对人体有害的物质。
- 本地化测试。为国际化和本地化的需要,广告图案和文字是否在政治、宗教和文化方面具有广泛的适用性。
- 对设计的改进建议。“如果是一次性杯子,能否标示已使用(比如变色)”和“杯子是否有使用者标贴(多人使用时防止混淆)”。
一个身份证号码输入框,怎么设计用例?
- 校验身份证号规则的有效性(包括地址码、生日期码、顺序码和校验码
- 校验 15 位身份证号和 18 位身份正好都是可用的
- 校验末位是 X 的情况
- 校验不足 15 位、16-17 位和大于 18 位的情况
- 如果是必输项,校验不输入的时候会不会有正确的提示
- 如果不是必输项,则要校验不输入的时候流程能否正常进行
- 校验输入非数字的情况,是否会有正确提示信息(包括大小写字母、汉字、特殊字符和标点符号)
- 校验输入全角的数字的时候,系统是否会识别(这个得根据需求确定是否可以使用全角的数字)
登录功能怎么设计测试用例?
具体需求:
有一个登录页面,有一个账号和一个密码输入框, 一个提交按钮。
[ 考察目的:]
- 了解需求(测什么都是从了解需求开始);
- 是否有设计 Test Case 的能力
- 是否熟悉各种测试方法;
- 是否有丰富的 Web 测试经验;
- 是否了解 Web 开发;
[ 了解需求:]
- 登录界面应该是弹出窗口式的,还是直接在网页里面;
- 账号长度和密码的强度(比如需要多少位、大小写敏感、特殊字符混搭等);
- 界面美观是否有特殊要求?(即是否要进行 UI 测试);
- ····
[ 用例设计:]
- 功能测试
- 输入正确的账号和密码,点击提交按钮,验证是否能正确登录。(正常输入)
- 输入错误的账号或者密码, 验证登录会失败,并且提示相应的错误信息。(错误校验)
- 登录成功后能否跳转到正确的页面(低)
- 账号和密码,如果太短或者太长,应该怎么处理(安全性,密码太短时是否有提示)
- 账号和密码,中有特殊字符(比如空格),和其他非英文的情况(是否做了过滤)
- 记住账号的功能
- 登录失败后,不能记录密码的功能
- 账号和密码前后有空格的处理
- 密码是否加密显示(星号圆点等)
- 牵扯到验证码的,还要考虑文字是否扭曲过度导致辨认难度大,考虑颜色(色盲使用者),刷新或换一个按钮是否好用
- 登录页面中的注册、忘记密码,登出用另一帐号登录等链接是否正确
- 输入密码的时候,大写键盘开启的时候要有提示信息。
- 什么都不输入,点击提交按钮,看提示信息。(非空检查)
- 界面测试
- 布局是否合理,2 个 Testbox 和一个按钮是否对齐
- Testbox 和按钮的长度,高度是否复合要求
- 界面的设计风格是否与 UI 的设计风格统一
- 界面中的文字简洁易懂,没有错别字。
- 性能测试(Performance Test)
- 打开登录页面,需要几秒
- 输入正确的账号和密码后,登录成功跳转到新页面,不超过 5 秒
- 安全性测试(Security Test)
- 登录成功后生成的 Cookie 是否有 HttpOnly(降低脚本盗取风险)
- 账号和密码是否通过加密的方式,发送给 Web 服务器
- 账号和密码的验证,应该是用服务器端验证,而不能单单是在客户端用 javaScript 验证
- 账号和密码的输入框,应该屏蔽 SQL 注入攻击
- 账号和密码的的输入框,应该禁止输入脚本(防止 XSS 攻击)
- 错误登录的次数限制(防止暴力破解)
- 考虑是否支持多用户在同一机器上登录;
- 考虑一用户在多台机器上登录
- 可用性测试(Usability Test)
- 是否可以全用键盘操作,是否有快捷键
- 输入账号,密码后按回车,是否可以登录
- 输入框是否可以以 Tab 键切换
- 兼容性测试(Compatibility Test)
- 主流的浏览器下能否显示正常已经功能正常(IE6~11, FireFox, Chrome, Safari 等 )
- 不同的平台是否能正常工作,比如 Windows, Mac
- 移动设备上是否正常工作,比如 iPhone, Android
- 不同的分辨率