首页 > 代码库 > 实验三 021 林明铁
实验三 021 林明铁
一、实验目的
掌握黑盒测试用例设计方法
二、实验要求
(1)对被测程序进行黑盒测试用例设计
(2)运用等价类、边界值、决策表、状态图法等进行测试用例设计。
(3)对手机上任意一款音乐软件进行黑盒测试实践。(作业若雷同,后上传者判定0分)
三、实验内容
1、对被测程序运用不同的测试技巧进行测试用例设计,并执行测试,撰写测试小结。
要求写出测试用例表、执行情况和测试小结。
2、对手机上任意一款音乐软件进行黑盒测试。
要求:1)使用思维导图
2)根据场景法、状态图法 设计测试用例。
3)附加题:如有可能尝试用正交实验法、组合测试对测试用例进行简化。
写出测试用例表、执行情况,测试小结。
实验(1):对被测程序运用不同的测试技巧进行测试用例设计,并执行测试,撰写测试小结。
1)被测项目界面
2)测试用例设计表
等价类测试:
输入等价类 |
有效等价类 |
无效等价类 |
年份长度及类型 |
4位数字(1) |
有非数字的字符(12) |
年份范围 |
1912~2050(2) |
小于1912(15) |
月份长度及类型 |
1位数字(3) 2位数字(4) |
有非数字的字符(17) |
月份范围 |
1~12(5) |
小于1(19) |
日的长度及类型 |
1位数字(6) 2位数字(7) |
有非数字的字符(21) |
日的范围 |
月份为:1、3、5、7、8、10、12时:1~31(8) |
月份为:1、3、5、7、8、10、12:小于1(23) |
测试用例:
用例编号 |
测试数据 |
期望结果 |
实际结果 |
覆盖范围 |
是否通过 |
YJ1-001 |
1933-3-6 |
星期一 上一天:1933-3-5 下一天:1933-3-7 |
与预期结果相同 |
1、2、3、5、6、8 |
通过 |
YJ1-002 |
1999-11-16 |
星期二 上一天:1999-11-15 下一天:1999-11-17 |
与预期结果相同 |
1、2、4、5、7、9 |
通过 |
YJ1-003 |
2008-2-29 |
星期五 上一天:2008-2-28 下一天:2008-3-1 |
与预期结果相同 |
1、2、3、5、7、10 |
通过 |
YJ1-004 |
2013-2-28 |
星期四 上一天:2013-2-27 下一天:2013-3-1 |
与预期结果相同 |
1、2、3、5、7、11 |
通过 |
YJ1-005 |
1L66-9-13 |
提示输入数字 |
与预期结果相同 |
12 |
通过 |
YJ1-006 |
19936-6-15 |
提示年份超出范围 |
没有提示 |
13 |
否 |
YJ1-007 |
206-6-3 |
提示年份超出范围 |
没有提示 |
14 |
否 |
YJ1-008 |
1910-9-16 |
提示年份超出范围 |
没有提示 |
15 |
否 |
YJ1-009 |
2060-3-26 |
提示年份超出范围 |
没有提示 |
16 |
否 |
YJ1-010 |
1976-X-16 |
提示输入数字 |
与预期结果相同 |
17 |
通过 |
YJ1-011 |
1936-52-23 |
提示月份超出范围 |
没有提示 |
18 |
否 |
YJ1-012 |
1963-0-25 |
提示月份超出范围 |
没有提示 |
19 |
否 |
YJ1-013 |
1983-13-9 |
提示月份超出范围 |
没有提示 |
20 |
否 |
YJ1-014 |
1966-5-1D |
提示输入数字 |
与预期结果相同 |
21 |
通过 |
YJ1-015 |
1988-6-123 |
提示日期超出范围 |
没有提示 |
22 |
否 |
YJ1-016 |
1982-3-0 |
提示日期超出范围 |
没有提示 |
23 |
否 |
YJ1-017 |
1986-5-32 |
提示日期超出范围 |
没有提示 |
24 |
否 |
YJ1-018 |
1963-9-0 |
提示日期超出范围 |
没有提示 |
25 |
否 |
YJ1-019 |
1963-11-31 |
提示日期超出范围 |
没有提示 |
26 |
否 |
YJ1-020 |
2012-2-0 |
提示日期超出范围 |
没有提示 |
27 |
否 |
YJ1-021 |
2020-2-30 |
提示日期超出范围 |
没有提示 |
28 |
否 |
YJ1-022 |
2017-2-0 |
提示日期超出范围 |
没有提示 |
29 |
否 |
YJ1-023 |
2015-2-29 |
提示日期超出范围 |
没有提示 |
30 |
否 |
边界值法测试:
1912<=年份<=2050
1<=月份<=12
1<=日期(月份:4、6、9、11)<=30
1<=日期(月份为:1、3、5、7、8、10、12)<=31
1<=日期(月份:2 年份:闰年)<=29
1<=日期(月份:2 年份:平年)<=28
测试用例:
用例编号 |
测试数据 |
期望结果 |
实际结果 |
是否通过 |
YJ2-001 |
1911-3-6 |
提示年份超出范围 |
没有提示 |
否 |
YJ2-002 |
1912-6-16 |
星期日 上一天:1912-6-15 下一天:1912-6-17 |
与预期结果相同 |
通过 |
YJ2-003 |
1913-9-16 |
星期二 上一天:1913-9-15 下一天:1913-9-17 |
与预期结果相同 |
通过 |
YJ2-004 |
2049-6-3 |
星期四 上一天:2049-6-2 下一天:2049-6-4 |
与预期结果相同 |
通过 |
YJ2-005 |
2050-10-6 |
星期四 上一天:2050-10-5 下一天:2050-10-7 |
与预期结果相同 |
通过 |
YJ2-006 |
2051-3-19 |
提示年份超出范围 |
没有提示 |
否 |
YJ2-007 |
1963-0-3 |
提示月份超出范围 |
没有提示 |
否 |
YJ2-008 |
1999-1-20 |
星期三 上一天:1999-1-19 下一天:1999-1-21 |
与预期结果相同 |
通过 |
YJ2-009 |
1996-2-6 |
星期二 上一天:1996-2-5 下一天:1996-2-7 |
与预期结果相同 |
通过 |
YJ2-010 |
2016-11-16 |
星期三 上一天:2016-11-15 下一天:2016-11-17 |
与预期结果相同 |
通过 |
YJ2-011 |
2019-12-6 |
星期五 上一天:2019-12-5 下一天:2019-12-7 |
与预期结果相同 |
通过 |
YJ2-012 |
2000-13-9 |
提示月份超出范围 |
没有提示 |
否 |
YJ2-013 |
1963-6-0 |
提示日期超出范围 |
没有提示 |
否 |
YJ2-014 |
2016-9-1 |
星期四 上一天:2016-8-31 下一天:2016-9-2 |
与预期结果相同 |
通过 |
YJ2-015 |
2019-11-2 |
星期六 上一天:2019-11-1 下一天:2019-11-3 |
与预期结果相同 |
通过 |
YJ2-016 |
2000-4-29 |
星期六 上一天:2000-4-28 下一天:2000-4-30 |
与预期结果相同 |
通过 |
YJ2-017 |
1999-6-30 |
星期三 上一天:1999-6-29 下一天:1999-7-1 |
与预期结果相同 |
通过 |
YJ2-018 |
2018-9-31 |
提示日期超出范围 |
没有提示 |
否 |
YJ2-019 |
1936-1-0 |
提示日期超出范围 |
没有提示 |
否 |
YJ2-020 |
2030-3-1 |
星期五 上一天:2030-2-28 下一天:2030-3-2 |
与预期结果相同 |
通过 |
YJ2-021 |
1968-5-2 |
星期四 上一天:1968-5-1 下一天:1968-5-3 |
与预期结果相同 |
通过 |
YJ2-022 |
1972-7-30 |
星期日 上一天:1972-7-29 下一天:1972-7-31 |
与预期结果相同 |
通过 |
YJ2-023 |
1987-8-31 |
星期一 上一天:1987-8-30 下一天:1987-9-1 |
与预期结果相同 |
通过 |
YJ2-024 |
2036-10-32 |
提示日期超出范围 |
没有提示 |
否 |
YJ2-025 |
1968-2-0 |
提示日期超出范围 |
没有提示 |
否 |
YJ2-026 |
1976-2-1 |
星期日 上一天:1976-1-31 下一天:1976-2-2 |
与预期结果相同 |
通过 |
YJ2-027 |
2008-2-2 |
星期六 上一天:2008-2-1 下一天:2008-2-3 |
与预期结果相同 |
通过 |
YJ2-028 |
2012-2-28 |
星期二 上一天:2012-2-27 下一天:2012-2-29 |
与预期结果相同 |
通过 |
YJ2-029 |
2016-2-29 |
星期一 上一天:2012-2-28 下一天:2012-3-1 |
与预期结果相同 |
通过 |
YJ2-030 |
2036-2-30 |
提示日期超出范围 |
没有提示 |
否 |
YJ2-031 |
1983-2-0 |
提示日期超出范围 |
没有提示 |
否 |
YJ2-032 |
1965-2-1 |
星期一 上一天:1965-1-31 下一天:1965-2-2 |
与预期结果相同 |
通过 |
YJ2-033 |
1987-2-2 |
星期一 上一天:1987-2-1 下一天:1987-2-3 |
与预期结果相同 |
通过 |
YJ2-034 |
2013-2-27 |
星期三 上一天:2013-2-26 下一天:2013-2-28 |
与预期结果相同 |
通过 |
YJ2-035 |
2017-2-28 |
星期二 上一天:2017-2-27 下一天:2017-3-1 |
与预期结果相同 |
通过 |
YJ2-036 |
2033-2-29 |
提示日期超出范围 |
没有提示 |
否 |
决策表法测试:
Y1={年:是闰年};
Y2={年:不是闰年};
M1={月:每月有30天};
M2={月:每月有31天,除12月以外};
M3={月:此月是12月};
M4={月:此月是2月}
D1={日:1<=日<=27};
D2={日:日=28};
D3={日:日=29};
D4={日:日=30};
D5={日:日=31};
决策表:
选项
规则 |
1 2 3 |
4 |
5 |
6 7 8 9 |
10 |
11 12 13 14 |
15 |
16 |
17 |
18 |
19 |
20 |
21,22 |
|
条件 |
C1:month在 |
M1 |
M1 |
M1 |
M2 |
M2 |
M3 |
M3 |
M3 |
M4 |
M4 |
M4 |
M4 |
M4 |
C2:day在 |
D1 D2 D3 |
D4 |
D5 |
D1 D2 D3 D4 |
D5 |
D1 D2 D3 D4 |
D5 |
D1 |
D2 |
D2 |
D3 |
D3 |
D4 D5 |
|
C3:year在 |
- |
- |
- |
- |
- |
- |
- |
- |
Y1 |
Y2 |
Y1 |
Y2 |
- |
|
动作 |
A1:不可能 |
|
|
√ |
|
|
|
|
|
|
|
|
√ |
√ |
A2:day加1 |
√ |
|
|
√ |
|
√ |
|
√ |
√ |
|
|
|
|
|
A3:day复位 |
|
√ |
|
|
√ |
|
√ |
|
|
√ |
√ |
|
|
|
A4:month加1 |
|
√ |
|
|
√ |
|
|
|
|
√ |
√ |
|
|
|
A5:month加复位 |
|
|
|
|
|
|
√ |
|
|
|
|
|
|
|
A6:year加1 |
|
|
|
|
|
|
√ |
|
|
|
|
|
|
测试用例:
用例编号 |
测试数据 |
期望结果 |
实际结果 |
是否通过 |
YJ3-001 |
1999-6-2 |
星期三 上一天:1999-6-1 下一天:1999-6-3 |
与预期的结果一样 |
通过 |
YJ3-002 |
2018-1-31 |
星期三 上一天:2018-1-30 下一天:2018-2-1 |
与预期的结果一样 |
通过 |
YJ3-003 |
1963-9-31 |
提示日期超出范围 |
没有提示 |
否 |
YJ3-004 |
1966-5-6 |
星期五 上一天:1966-5-5 下一天:1966-5-7 |
与预期的结果一样 |
通过 |
YJ3-005 |
1976-7-31 |
星期六 上一天:1976-7-30 下一天:1976-8-1 |
与预期的结果一样 |
通过 |
YJ3-006 |
1996-12-29 |
星期日 上一天:1996-12-28 下一天:1996-12-30 |
与预期的结果一样 |
通过 |
YJ3-007 |
1982-12-31 |
星期五 上一天:1982-12-30 下一天:1983-1-1 |
与预期的结果一样 |
通过 |
YJ3-008 |
1997-12-13 |
星期六 上一天:1997-12-12 下一天:1997-12-14 |
与预期的结果一样 |
通过 |
YJ3-009 |
2016-2-28 |
星期日 上一天:2016-2-27 下一天:2016-2-29 |
与预期的结果一样 |
通过 |
YJ3-010 |
2017-2-28 |
星期二 上一天:2017-2-27 下一天:2017-3-1 |
与预期的结果一样 |
通过 |
YJ3-011 |
2020-2-29 |
星期六 上一天:2020-2-28 下一天:2020-3-1 |
与预期的结果一样 |
通过 |
YJ3-012 |
2021-2-29 |
提示日期超出范围 |
没有提示 |
否 |
YJ3-013 |
2028-2-30 |
提示日期超出范围 |
没有提示 |
否 |
3)测试结论
在用户输入错误的年、错误的月份和错误的日期时没有给用户相应的详细提示。
实验(2):对手机上任意一款音乐软件进行黑盒测试
部分思维导图(详细见实验报告图片附件):
实例:使用手机号登录APP,选择未缓存的歌单中的歌曲进行评论。
使用网易云音乐评论歌曲的整个过程描述:用户打开网易云音乐APP,在拥有网络状态下,用户进行登录,选择歌曲,点击歌曲进行播放,选择评论,输入评论内容,输入评论内容时需要用户登录,如果已经登录过了则可以输入评论内容,点击发送。
场景法:
基本流(场景1) |
用户打开网易云音乐,登录网易云,选择歌单,点击歌曲进行播放,点击评论,输入评论内容,点击发送。 |
备选流1(场景2) |
登陆时无网络 |
备选流2(场景3) |
手机号未注册 |
备选流3(场景4) |
手机号不正确 |
备选流4(场景5) |
密码错误 |
备选流5(场景6) |
手机号为空 |
备选流6(场景7) |
密码为空 |
备选流7(场景8) |
选择歌单时无网络 |
备选流8(场景9) |
播放歌曲时无网络 |
备选流9(场景10) |
输入评论时用户未登录 |
备选流10(场景11) |
输入空的评论内容 |
备选流11(场景12) |
输入超过字数限制的评论内容 |
备选流12(场景13) |
发送时无网络 |
测试用例设计(V表示有效输入,I表示无效输入,n/a表示不适用):
用例编号 |
场景/条件 |
网络状态 |
帐号 |
密码 |
选择歌单 |
播放歌曲 |
评论内容 |
发送 |
预期结果 |
实际结果 |
是否通过 |
YJ001 |
场景1:评论成功 |
V |
V |
V |
V |
V |
V |
V |
评论成功 |
发表成功 |
Y |
YJ002 |
场景2: 登录时无网络 |
I |
V |
V |
n/a |
n/a |
n/a |
n/a |
提示无网络 |
提示当前网络不可用,请检查网络 |
Y |
YJ003 |
场景3:手机号未注册 |
V |
I |
I |
n/a |
n/a |
n/a |
n/a |
提示该手机号未注册 |
提示用户名或密码错误 |
N |
YJ004 |
场景4:手机号不正确 |
V |
I |
I |
n/a |
n/a |
n/a |
n/a |
提示手机号不正确 |
提示请输入11位手机号 |
Y |
YJ005 |
场景5:密码错误 |
V |
V |
I |
n/a |
n/a |
n/a |
n/a |
提示密码错误 |
提用户名或密码错误 |
Y |
YJ006 |
场景6:手机号为空 |
V |
n/a |
n/a |
n/a |
n/a |
n/a |
n/a |
提示输入手机号 |
提示请输入手机号 |
Y |
YJ007 |
场景7: 密码为空 |
V |
V |
n/a |
n/a |
n/a |
n/a |
n/a |
提示输入密码 |
提示请输入密码 |
Y |
YJ008 |
场景8:选择歌单时无网络 |
I(登陆成功后) |
V |
V |
V |
n/a |
n/a |
n/a |
提示无网络 |
提示当前网络不可用 |
Y |
YJ009 |
场景9:播放歌曲时无网络 |
I(登陆成功并已经进入歌单界面后) |
V |
V |
V |
V |
n/a |
n/a |
提示无网络 |
提示当前网络不可用 |
Y |
YJ010 |
场景10:输入评论时,用户未登录 |
V |
n/a |
n/a |
V |
V |
n/a |
n/a |
弹出登陆界面让用户登录 |
弹出登陆界面 |
Y |
YJ011 |
场景11:评论内容为空 |
V |
V |
V |
V |
V |
I |
n/a |
无法发送评论 |
发送按键无法操作 |
Y |
YJ012 |
场景12:输入超过字数限制的评论内容 |
V |
V |
V |
V |
V |
I |
n/a |
提示超过字数限制 |
提示字数超过限制 |
Y |
YJ013 |
场景13:发送评论时无网络 |
I(用户已登录,已写好评论内容后) |
V |
V |
V |
V |
V |
V |
提示无网络 |
提示当前网络不可用 |
Y |
用户使用手机登录或游客试用的方式进入网易云音乐的状态图:
IP1:提供网络
IP2:切断网络
IP3:点击手机号登录
IP4:输入手机号
IP5:输入密码
IP6:点击登录
IP7:点击游客试用
状态法实例:
状态 |
启动网易云音乐 |
有网络状态的登录界面 |
无网络状态的登录界面 |
手机号登录页面 |
密码已输入 |
手机号已输入 |
手机号密码已输入 |
网易云音乐主页 |
1 |
1 |
2 |
|
|
|
|
|
3 |
2 |
1 |
4 |
23 |
|
|
|
|
5 |
3 |
1 |
|
2 |
|
|
|
|
3 |
4 |
1 |
2 |
|
34 |
|
56 |
7 |
8 |
5 |
1 |
2 |
|
3 |
45 |
|
6 |
7 |
6 |
1 |
2 |
|
3 |
|
45 |
6 |
7 |
7 |
1 |
2 |
|
3 |
|
4 |
5 |
6 |
8 |
1 |
2 |
|
3 |
4 |
|
5 |
6 |
9 |
1 |
3 |
2 |
|
|
|
|
4 |
测试小结:
使用思维导图能够清晰知道软件的逻辑顺序,使用不一样的标记可以标记哪个部分已经测试过了,哪个部分还没测试过,同时可以将发现的BUG描述在相应的位置上,BUG位置清晰明了。
状态图的使用和状态图实例不是很理解。
网易云音乐APP的部分页面的跳转出现重复叠加,部分页面关闭时没有关闭资源,网易云音乐提供的资源与用户所需要的资源部分不符,详细的BUG描述见实验报告图片附件。
实验三 021 林明铁