题目
有一个员工管理系统,现对其录入模块进行测试。其中,人员信息包括:
编号:系统自动编号,无需手动录入;
姓名:必须有,要求为不超过5个汉字;
身份证:必须有,长度为15或18位置,末尾为数字或X,注意大小写;
邮箱:要么为空白,输入必须包含@和.
年龄:18-80之间的数字
住址:可以空白
注意:如果录入正确,则提示录入成功,如果录入错误,则提示数据不对。
使用等价类划分法进行划分
第一步 确定输入和输出
输入
- 编号(自动录入)
- 姓名
- 身份证号
- 邮箱
- 年龄
地址
输出
如果录入正确则提示录入正确,反之录入错误
第二步 等价类划分生成等价类表
输入
输入项 划分 输入内容 划分编号 编号 无需划分系统自动生成 无 无 姓名 有效等价类 汉字<=5 && 汉字 > 0 0 无效等价类 汉字 <=0 && 汉字 >5 1 非汉字内容(例如西文字体) <= 5 && >= 0 2 非汉字内容(例如西文字体)<0 && > 5 3 身份证号 有效等价类 长度为15 末尾为X 5 长度为15 末尾为数字 6 长度为18 末尾为x 7 长度为18 末尾为数字 8 无效等价类 长度为15或18 && 末尾为X或数字 && 其余为非数字内容 9 长度为15或18 && 末尾为!X,!数字 && 其余 数字 10 长度为15或18 && 末尾为!x,!数字 && 其余 !数字 11 长度不为15和18 && 其余内容任意 12 邮箱 有效等价类 空白 14 非空白 含@ && . 15 无效等价类 非空白 不含@ && . 16 年龄 有效等价类 18 -80 && 数字 17 无效等价类 超出 18~80 && 数字 18 非数字 19 空 20 地址 有效等价类 非空 21 空 22 输出
输出项 划分 输出内容 编号 录入结果 有效等价类 录入正确,录入成功 23 录入失败,提示错误 24
第三步,根据等价类设计测试用例
为每一个等价类规定一个编号
上表中已经完成
设计测试用例(有效等价类)
设计测试用例的时候,需要尽可能多的覆盖有效等价类
测试用例编号 | 覆盖的等价类
------------|-----------
① | 0,5,14,17,21
②|0,6,15,17,22
③|0,7,15,17,22
④|0,8,15,17,22
设计测试用例(无效等价类)
每一个新测试的用例,只包含一个无效等价类,其余选择有效等价类
测试用例编号| 覆盖的等价类
----------|-----------
①|1,5,14,17,21
②|2,5,14,17,21
③|3,5,14,17,21
⑤|0,9,14,17,21
⑥|0,10,14,17,21
⑦|0,11,14,17,21
⑧|0,12,14,17,21
⑩|0,5,16,17,21
11 | 0,5,14,18,21
12|0,5,14,19,21
13|0,5,14,20,21
第四步,选取测试用例
有效等价类,测试用例
测试用例编号 | 姓名 | 身份证号 | 邮箱 | 年龄 | 地址 | 对应的测试用例编号 |
---|---|---|---|---|---|---|
1 | 小 | 123244533563332X | 18 | w | 0,5,14,17,21 | |
2 | 小小小小小 | 123432345432345 | 80 | 地 | 0,6,15,17,22 | |
3 | 小 | 12345342345432345X | 18 | @ | 0,7,15,17,22 | |
4 | 小 | 123454323456321234 | 80 | = | 0,8,15,17,22 |
无效等价类,测试用例
测试用例编号 | 姓名 | 身份证号 | 邮箱 | 年龄 | 地址 | 对应的测试用例编号 | 输出 |
---|---|---|---|---|---|---|---|
1 | 12343212345432X | 18 | / | 1,5,14,17,21 | |||
2 | e | 12343212345432X | 18 | < | 2,5,14,17,21 | ||
3 | @@@@^w | 12343212345432X | 18 | ' | 3,5,14,17,21 | ||
5 | 小 | R^78290^273^yweixX | \n | 0,9,14,17,21 | |||
6 | 小小小小小 | &nbhsp;328493ndwsx | 80 | <code> | 0,10,14,17,21 | ||
7 | 小小小小小 | 2345ee{}@wexsdresx | 80 | 'select * fron sc | 0,11,14,17,21 | ||
8 | 小小小小小 | 80 | 'use mysql | 0,12,14,17,21 | |||
10 | 小小小小小 | 12343212345432X | ''''''@mingemail | 80 | a | 0,5,16,17,21 | |
11 | 小小小小小 | 12343212345432X | ''''''@minge.。mail | -0 | a | 0,5,14,18,21 | |
12 | 小小小小小 | 12343212345432X | ''''''@minge.。mail | - | a | 0,5,14,19,21 | |
13 | 小小小小小 | 12343212345432X | ''''''@minge.。mail | a | 0,5,14,20,21 |
第五步,测试用例书写完成
测试基本信息
用例 | 说明 | 初始化 | 前提与约束 |
---|---|---|---|
验证用户信息输入功能 | 测试是否能将用户的信息录入 | 登录系统 | 需要登录系统 |
测试过程
有效等价类,测试用例
测试用例编号 | 姓名 | 身份证号 | 邮箱 | 年龄 | 地址 | 对应的测试用例编号 |
---|---|---|---|---|---|---|
1 | 小 | 123244533563332X | 18 | w | 0,5,14,17,21 | |
2 | 小小小小小 | 123432345432345 | 80 | 地 | 0,6,15,17,22 | |
3 | 小 | 12345342345432345X | 18 | @ | 0,7,15,17,22 | |
4 | 小 | 123454323456321234 | 80 | = | 0,8,15,17,22 |
无效等价类,测试用例
测试用例编号 | 姓名 | 身份证号 | 邮箱 | 年龄 | 地址 | 对应的测试用例编号 | 输出 |
---|---|---|---|---|---|---|---|
1 | 12343212345432X | 18 | / | 1,5,14,17,21 | |||
2 | e | 12343212345432X | 18 | < | 2,5,14,17,21 | ||
3 | @@@@^w | 12343212345432X | 18 | ' | 3,5,14,17,21 | ||
5 | 小 | R^78290^273^yweixX | \n | 0,9,14,17,21 | |||
6 | 小小小小小 | &nbhsp;328493ndwsx | 80 | <code> | 0,10,14,17,21 | ||
7 | 小小小小小 | 2345ee{}@wexsdresx | 80 | 'select * fron sc | 0,11,14,17,21 | ||
8 | 小小小小小 | 80 | 'use mysql | 0,12,14,17,21 | |||
10 | 小小小小小 | 12343212345432X | ''''''@mingemail | 80 | a | 0,5,16,17,21 | |
11 | 小小小小小 | 12343212345432X | ''''''@minge.。mail | -0 | a | 0,5,14,18,21 | |
12 | 小小小小小 | 12343212345432X | ''''''@minge.。mail | - | a | 0,5,14,19,21 | |
13 | 小小小小小 | 12343212345432X | ''''''@minge.。mail | a | 0,5,14,20,21 |
其余信息
测试人员 | 时间 | 执行结果 | 执行时间 |
---|---|---|---|
小 | 无 | 无 | 无 |