软件测试用例设计总结

一、通用原则

  1. 等价类划分法,将无限的测试变成有限的测试
  2. 边界值分析法,是在任何用例中都必须用到的方法
  3. 错误值推测法,能帮助我们在原有用例的基础上追加补充一些用例
  4. 若输入条件需要考虑组合情况,则可用因果图法和判定表法
  5. 参数配置类的测试,可结合正交试验法筛选用例
  6. 业务流程清晰的系统,可选用场景法设计测试用例
  7. 对于有状态迁移和逻辑功能路径组合的情况,考虑使用功能图法。
    对照程序逻辑,检查已设计出的测试用例逻辑覆盖度,如果没有达到要求的覆盖标准,应再补充足够的测试用例。

二、设计思想

(1)化大为小&模块化
整体分析得出简易用例
细节分析细化用例
填充数据完善用例
(2)优化
利用设计测试用例的8种方法不断的分解合并测试用例,利用发散的思维构造测试用例。

三、实例之新建岗位

业务描述:

  1. superuser用户登录岗位之后可以请求新建岗位
  2. 进入“岗位信息查询”页面可以点击新建岗位
  3. 新建岗位时,可以设定新建的岗位名称,所在部门,岗位描述信息
  4. 新建岗位信息不能缺失,如果某一项没写要给出提示
  5. 岗位名称长度不超过100个字符
  6. 岗位描述长度不超过1000个字符
  7. 保存时岗位名不能重复
  8. 填写完信息后可选择保存或取消操作,然后返回“岗位信息描述”页面,结束流程
    整体分析得出简易用例
基本流 1.superuser用户登录
2.进入 “岗位信息查询”页面点击新建
3.打开新建岗位页面
4.输入新建岗位信息
5.点击保存
备选流1 基本流步骤3岗位信息没有输入完整
备选流2 基本流步骤3岗位名称超过100个字符
备选流3 基本流步骤3岗位描述超过1000个字符
备选流4 保存时岗位名重复
备选流5 保存时选择取消操作

在这里插入图片描述
生成简易用例

场景1 基本流
场景2 基本流→备选流1
场景3 基本流→备选流2
场景4 基本流→备选流3
场景5 基本流→备选流4
场景6 基本流→备选流5
用例ID 场景 场景描述 预期结果
TC001 场景1 输入有效岗位信息并保存 成功创建岗位并返回岗位信息描述页面
TC002 场景2 输入不完整岗位信息并保存 提示输入信息不完整,岗位信息不被保存,返回步骤4
TC003 场景3 输入岗位名称超过100字符并保存 提示岗位名称超过100字符,岗位信息不被保存,返回步骤4
TC004 场景4 输入岗位描述超过1000字符 提示岗位描述超过1000字符,岗位信息不被保存,返回步骤4
TC005 场景5 保存时岗位名称重复 提示岗位已存在,保存失败并返回步骤4
TC006 场景6 保存时选择取消 岗位信息未保存,返回岗位信息描述页面

细节分析细化用例

用例ID 场景 场景描述 预期结果
TC001 场景1 输入有效岗位信息并保存 成功创建岗位并返回岗位信息描述页面
TC002 场景1 输入无效岗位信息并保存(岗位名称里含有非法字符) 提示岗位信息中含有非法字符,保存失败,返回步骤4
TC003 场景1 输入无效岗位信息并保存(所在部门中含有非法字符) 提示岗位信息中含有非法字符,保存失败,返回步骤4
TC004 场景1 输入无效岗位信息并保存(岗位描述中含有非法字符) 提示岗位信息中含有非法字符,保存失败,返回步骤4
TC005 场景2 输入不完整岗位信息并保存(岗位名称为空) 提示输入信息不完整,岗位信息不被保存,返回步骤4
TC006 场景2 输入不完整岗位信息并保存(所在部门为空) 提示输入信息不完整,岗位信息不被保存,返回步骤4
TC007 场景2 输入不完整岗位信息并保存(岗位描述为空) 提示输入信息不完整,岗位信息不被保存,返回步骤4
TC008 场景3 输入岗位名称99字符并保存 成功创建岗位并返回岗位信息描述页面
TC009 场景3 输入岗位名称100字符并保存 成功创建岗位并返回岗位信息描述页面
TC010 场景3 输入岗位名称101字符并保存 提示岗位名称超过100字符,岗位信息不被保存,返回步骤4
TC011 场景4 输入岗位描述999字符 成功创建岗位并返回岗位信息描述页面
TC012 场景4 输入岗位描述1000字符 成功创建岗位并返回岗位信息描述页面
TC013 场景4 输入岗位描述1001字符 提示岗位描述超过1000字符,岗位信息不被保存,返回步骤4
TC014 场景5 保存时岗位名称重复 提示岗位已存在,保存失败并返回步骤4
TC015 场景6 保存时选择取消 岗位信息未保存,返回岗位信息描述页面
TC016 异常事件流1 保存时数据库服务器故障,网络故障 岗位信息未保存,提示系统异常

填充数据完善用例略。

四、方法应用

功能划分要简单清晰,一个测试用例只检查一个功能模块
测试用例的划分也要单一,一个测试用例只检查功能点的一种情况
测试用例要有简单的目的描述,要有明确的执行前提,包括环境,场景,数据,要有明确的测试数据
一般设计步骤
根据设计规格得出基本测试用例
1.补充边界值测试用例
2.补充错误猜测测试用例
3.补充异常测试用例
4.补充性能测试用例

Web类常用控件测试用例设计思路

Textbox实例1:要求一个textbox控件不能为空,可以填写任何字符,长度不能超过20,设计测试用例。
按长度用边界值法设计测试用例
1.输入0个字符(报错)
2.输入1个字符(正常)
3.输入19个字符(正常)
4.输入20个字符(正常)
5.输入21个字符(报错)
按字符类型设计测试用例
输入汉字(正常)
输入英文字符串(正常)
输入数字(正常)
输入符号(正常)
安全性方面设计测试用例
XSS攻击(正常)
Textbox实例2:一个textbox表示金额,小数点后最多2位,字符长度不超过10,设计测试用例
字符长度边界值测试
输入9位字符(正常)
输入10位字符(正常)
输入11位字符(报错)
小数位数边界值测试
输入为空(报错)
输入2位小数(正常)
输入3位小数(报错)
字符类型测试
输入汉字(报错)
输入string字符串(报错)
输入空格(报错)
输入除.外的符号(报错)
输入超过1个.(报错)
Select实例:一个下拉菜单框,默认值为空,有A,B,C3个选项,单选,不可写,设计测试用例
默认值为空检查(正常)
不可写检查(正常)
选择A(正常)
选择B(正常)
选择C(正常)
单选检查(正常)
Web网页通常分为展示型和提交型。
展示型页面测试用例设计:一个web页面,含有table数据,用来展示数据库中的名字,金额。设计测试用例
页面元素检查
检查Table格式(正常)
检查其他页面样式(正常)
页面数据检查
名字为空(正常)
名字含有汉字(正常)
名字最大长度(正常)
金额为空(正常)
金额为0(正常)
金额带2位小数(正常)
金额最大长度(正常)

注:其他无效等价类自行设计。