一、测试用例-模板
所属模块 | 相关需求 | 用例标题 | 前置条件 | 步骤 | 预期 | 优先级 | 用例类型 |
/MKT(#1000) | 【MKT-需求】XXXXXXX | 【9.9_MKT_WEB】优惠列表,XXXXXXXXXXX | 1.操作一 2.操作二 |
P0 P1 |
功能测试 UI测试 兼容性测试 |
||
备注:步骤的格式需遵循导入禅道规则
二、测试用例-原则
三、测试用例-标题结构: 结构:【版本-模块-渠道】页面,模块,功能点_场景
例如:
【9.9-MKT-PC】优惠列表页,热门活动,产线tab_无产线时显示
【9.9-MKT-PC】优惠列表页,热门活动,产线tab_有一个产线时显示
【9.9-MKT-PC】优惠列表页,热门活动,产线tab_有多个产线时显示
【9.9-MKT-PC】优惠列表页,热门活动,产线tab_点击机票
四、测试用例-颗粒度划分 4.1、用例颗粒度基本原则:以最小功能模块来划分,为保障用例的可执行性、覆盖度,规范编写用例的颗粒度要求如下:
五、测试用例-场景设计
测试类型 | 场景设计 | 备注 |
功能测试 | 单运行正常值输入法、单运行边界值输入法、多运行顺序执行法、多运行相互作用法 (运行即测试人员模拟用户的操作或行为)、等价类、正交分析法、错误推断法、缓存测试、多tab测试、登录态对功能的影响 | |
数据测试 | 等价类和边界值分析法 空校验、长度校验、重名校验、边界值校验、格式校验(链接https、邮箱)、输入限制:中文、英文、数字、特殊字符、表情图标、前后中间空格(富文本支持首位多个空格);手动换行(富文本、普通文本)、数据类型、多数据组合测试、中英文符号、英文单词拼写、英文大小写、单双引号规范、简繁体 |
|
流程测试 | 路径分析法 :语句覆盖、分支覆盖、全覆盖、最小线性无关覆盖 | |
接口测试 | “输入—输出表”分析法,传值和接口响应 优惠引导组件支持ruleData参数设置-测试场景 接口调用和传值场景: 1、多页面来回操作,检查传值是否正确,是否缓存上一次参数 2、第一次访问,接口调用验证 3、领券后或某些操作后,接口调用验证 |
|
UI测试 | 整体布局、字号、字体、颜色、背景色、间距、输入框内间距、边框阴影、点击热区(文字、按钮)、有背景时卡片白底效果、行高、字重、圆角、图片尺寸、图片清晰度、图片格式、对齐方式、风格统一、hover样式、渐变 | |
可靠性测试 | 异常值输入法(如邮箱格式,输入不支持的特殊字符,可输入,但会校验不通过,提示错误)、故障值输入法(故障环境中,如网络异常、丢包) (异常系、容错性(接口出错,前端给予提示))、版本功能合并 | |
兼容性测试 | 浏览器兼容(Chrome、edge、safai)、浏览器版本(高版本、低版本)、APP兼容(Android物理键返回、IOSX头部和底部被遮挡)、电脑屏幕(台式机大屏、笔记本小屏)、版本升级、旧版本兼容性 | |
易用性 | 返回定位、快捷定位(易理解、易学、易操作、吸引性)、提示文案准确,无歧义、通俗易懂 | |
安全性 | 权限校验(登录失效、无权限访问)、敏感信息(身份证、电话号码、银行卡、URL中不能带敏感信息) | |
性能 | 时间性、资源利用率、图片资源大小 | |
待定 | 。。。 |
六、测试用例-常用设计方法
1、等价类划分法
就是将测试的范围划分成几个互不相交的子集,他们的并集是全集,从每个子集选出若干个有代表性的值作为测试用例。
即将测试过程中的输入、输出、操作等相似内容分组,从每组中挑选具有代表性的内容作为测试用例,划分份有效等价类和无效等价类
例如:测试一个用户名是否合法,用户名的定义为:8位数字组成的字符。
我们可以先划分子集:空用户名,1-7位数字,8位数字,9位或以上数字,非数字。然后从每个子集选出 若干个有代表性的值:
无效等价类
空用户名:“”
1-7位数字:"234"
9位或以上数字:"1234567890"
非数字:"abc&!!!"
有效等价类
8位数字:"00000000"
转化为测试用例:
在确立了等价类后,可建立等价类表,列出所有划分出的等价类输入条件:有效等价类、无效等价类,然后从划分出的等价类中按以下三个原则设计测试用例:
1)为每一个等价类规定一个唯一的编号;
2)设计一个新的测试用例,使其尽可能多地覆盖尚未被覆盖地有效等价类,重复这一步,直到所有的有效等价类都被覆盖为止;
3)设计一个新的测试用例,使其仅覆盖一个尚未被覆盖的无效等价类,重复这一步,直到所有的无效等价类都被覆盖为止。
2、边界值分析法
选出的测试用例,应选取正好等于、刚刚大于、刚刚小于边界的值,例如,对于在区间min,max的值,测试用例可以记为min,min+,max,max-。
例如,假定 X 为整数,10≤X≤100,那么 X 在测试中应该取的边界值为:9,10,11,99,100,101。
注:上面只是说边界值,如果是完整的测试,除了边界值外,还需要一个正常值,即12-98之间的任意值。
3、错误推测法
错误推测法是指:在测试程序时,人们可以根据经验或直觉推测程序中可能存在的各种错误,从而有针对性地编写检查这些错误的测试用例的方法。
这种方法没有固定的形式,依靠的是经验和直觉,很多时候,我们都会不知不觉的使用到。
若输入条件需要考虑组合情况,则可用因果图法和判定表法
4、判定表法
基于策略表的测试,是功能测试中最严密的测试方法,利于逻辑判断复杂的场景,通过穷举条件获得结果,对结果再进行优化合并,最终得到一个判断清晰的策略表。
方法适合于:
逻辑判断复杂的场景,通过穷举条件获得结果,对结果再进行优化合并,会得到一个判断清晰的策略表。
例如,某公司的对客户分类标准如下:顾客每次订货额在 1000元以上(含1000元),信誉好的,订单设“优先”标志;
生成判定表
初始判定表 | 1 | 2 | 3 | 4 | |
条件桩 | 信誉好吗 | Y | Y | N | N |
订货在1000以上吗 | Y | N | Y | N | |
动作桩 | 优先 | √ | |||
不优先 | √ | √ | √ |
简化,合并相似规则或者相同动作。(有两个或者多条规则具有相同的动作,并且条件项之间存在极为相似的关系就可以进行合并。)
得到的测试用例 :
信誉好,订货在1000以上,订单设“优先”标志;
订货在1000元以下,无法是否信誉好,订单设“正常”标志;
信誉不好,无论订货是否在1000元以下,订单设“正常”标志;
5、因果图法
用图解的方法表示输入的各种组合关系,写出判定表,从而设计相应的测试用例。
参数配置类的测试,可结合正交试验法筛选用例
减少用例数目,用尽量少的用例覆盖输入的组合。
正交表是按照一定规则生成的表。
业务流程清晰的系统,可选用场景法设计测试用例
同一种事件的不同触发顺序和处理结果就形成事件流,描绘事件触发时的情景,有利于测试设计者
设计测试用例,同时也使得测试用例更容易理解和执行。
对于有状态迁移和逻辑功能路径组合的情况,考虑使用功能图法。
功能图由状态迁移图和布尔函数组成。状态迁移图用状态和迁移来描述,一个状态指出数据输入的位置(或时间),而迁移则指明状态的改变,同时要依靠判定表或因果图表示的逻辑功能
对照程序逻辑,检查已设计出的测试用例逻辑覆盖度,如果没有达到要求的覆盖标准,应再补充足够的测试用例。
感谢每一个认真阅读我文章的人,礼尚往来总是要有的,虽然不是什么很值钱的东西,如果你用得到的话可以直接拿走:
这些资料,对于【软件测试】的朋友来说应该是最全面最完整的备战仓库,这个仓库也陪伴上万个测试工程师们走过最艰难的路程,希望也能帮助到你!有需要的小伙伴可以点击下方小卡片领取