版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、软件测试基础与实践实验报告实验名称:白盒测试实验二实验地点:机房实验日期:学生姓名:学生学号:、实验目的(1) 巩固白盒测试知识,能应用数据流覆盖方法设计测试用例;(2) 学习测试用例的书写。实验背景:在 Web 服务等应用中, CGI(Common Gateway Interface) 是用户访问服务器端 Web 页面内容的一种传输标 准。 在应用程序开发中,常常需要将 CGI 编码的字符串解码为普通的 ASCII 字符串。 程序 CgiDecode 正实 现了此功能。实验 1 :数据流测试技术实验 运用数据流测试方法,对 CgiDecode 程序中的 decode() 方法进行测试。 要求
2、:(1) 测试要考虑 decode() 中 encoded, decoded, *eptr, eptr, *dptr, dptr, ok, c, digit_high, digit_low 变量;(2) 给出每个变量对应的 du-path;(3) 根据变量的 du-path 设计测试用例,完成对 decode() 的测试;decode() 函数的语句及其编号如下:1 /* Translate a string from the CGI encoding to plain ascii text.2 * + becomes space, %xx becomes byte with hex valu
3、e xx,3 * other alphanumeric characters map to themselves.4 * Returns 0 for success, positive for erroneous input5 *1 = bad hexadecimal digit6 */7 int decode(char *encoded, char *decoded)8 9 char *eptr = encoded;10 char *dptr = decoded;11 int ok=0;while (*eptr)char c;c = *eptr;if (c = +) /* Case 1: +
4、 maps to blank */*dptr = ;else if (c = %) /* Case 2: %xx is hex for character xx */int digit_high = getHexValue(*(+eptr);int digit_low = getHexValue(*(+eptr);if ( digit_high = -1 | digit_low=-1) /* *dptr=?; */ok=1; /* Bad return code */ else *dptr = 16* digit_high + digit_low; else /* Case 3: All ot
5、her characters map to themselves */ *dptr = *eptr;+dptr;+eptr;*dptr = 0;/* Null terminator for string */1213141516171819202122232425262728293031323334353637return ok;流图如图所示(双击可打开和编辑9/10/111236/3714/1516 18203122/2333/34242826EncodedNodeTypeCode7DEFint decode(char *en coded, char *decoded)9USEchar *e
6、ptr = en coded可能的路径数为:1 X 1=1P:7-9测试用例:编号执行条件输入期望输出实际输出路径001数据流测试(+,-)return okreturn ok7-9DecodedNodeTypeCode7DEFint decode(char *en coded, char *decoded)10USEchar *dptr = decoded可能的路径数为:1 X 1=1P:7-9-10测试用例:编号执行条件输入期望输出实际输出路径001数据流测试(+,=)return okreturn ok7-9-10*eptrNodeTypeCode9DEFchar *eptr = en
7、coded12USEwhile (*eptr)15USEc = *eptr;22DEF, USEint digit high = getHexValue(*(+eptr)23DEF, USEint digit low = getHexValue(*(+eptr)31USE*dptr = *eptr34DEF+eptr可能的路径数为:4 X 5=20P1: 9-10-11-12P2: 9-10-11-12-14-15P3: 9-10-11-12-14-15-16-20-31P4: 9-10-11-12-14-15-16-20-22P5: 9-10-11-12-14-15-16-20-22-23P
8、6: 22-23-24-28-33-34-12P7: 22-23-24-28-33-34-12-14-15P& 22-23-24-28-33-34-12-14-15-16-20-31P9: 22P10: 22-23P11: 23-24-28-33-34-12P12: 23-24-28-33-34-12-14-15P13: 23-24-28-33-34-12-14-15-16-20-31P14: 23-24-28-33-34-12-14-15-16-20-22P15: 23P16: 34-12P17: 34-12-14-15P18: 34-12-14-15-16-20-31P19: 34-12-
9、14-15-16-20-22P20: 34-12-14-15-16-20-22-23约简后得:P1: 9-10-11-12-14-15-16-20-31P2: 9-10-11-12-14-15-16-20-22-23P3: 22-23-24-28-33-34-12-14-15-16-20-31P4: 23-24-28-33-34-12-14-15-16-20-22测试用例:编号执行条件输入期望输出实际输出路径001数据流测试($,=)return okreturn ok9-10-11-12-14-15-16-20-31002数据流测试(% 3 ,=)return okreturn ok9-10
10、-11-12-14-15-16-20-22-23003数据流测试(% 3 $,=)return okreturn ok22-23-24-28-33-34-12-14-15-16-20-31004数据流测试(%,=)return okreturn ok23-24-28-33-34-12-14-15-16-20-22EptrNodeTypeCode9DEFchar *eptr = en coded12USEwhile (*eptr)15USEc = *eptr;22DEF, USEint digit high = getHexValue(*(+eptr)23DEF, USEint digit lo
11、w = getHexValue(*(+eptr)31USE*dptr = *eptr34USE, DEF+eptr可能的路径数为:4 X 6=24P1: 9-10-11-12P2: 9-10-11-12-14-15P3: 9-10-11-12-14-15-16-20-31P4: 9-10-11-12-14-15-16-20-22P5: 9-10-11-12-14-15-16-20-22-23P6: 9-10-11-12-14-15-16-18-33-34P7: 22-23-24-28-33-34-12P8: 22-23-24-28-33-34-12-14-15P9: 22-23-24-28-3
12、3-34-12-14-15-16-20-31P10: 22P11: 22-23P12: 22-23-24-28-33-34P13: 23-24-28-33-34-12P14: 23-24-28-33-34-12-14-15P15: 23-24-28-33-34-12-14-15-16-20-31P16: 23-24-28-33-34-12-14-15-16-20-22P17: 23P18: 23-24-28-33-34P19: 34-12P20: 34-12-14-15P21: 34-12-14-15-16-20-31P22: 34-12-14-15-16-20-22P23: 34-12-14
13、-15-16-20-22-23P24: 34约简后:P1: 9-10-11-12-14-15-16-20-31P2: 9-10-11-12-14-15-16-20-22-23P3: 9-10-11-12-14-15-16-18-33-34P4: 22-23-24-28-33-34-12-14-15-16-20-31P5: 23-24-28-33-34-12-14-15-16-20-22测试用例:编号执行条件输入期望输出实际输出路径001数据流测试($,=)return okreturn ok9-10-11-12-14-15-16-20-31002数据流测试(%,=)return okretur
14、n ok9-10-11-12-14-15-16-20-22-23003数据流测试(+,=)return okreturn ok9-10-11-12-14-15-16-18-33-34004数据流测试(% 3 $,=)return okreturn ok22-23-24-28-33-34-12-14-15-16-20-31005数据流测试(% 3 %,=)return okreturn ok23-24-28-33-34-12-14-15-16-20-22*dptrNodeTypeCode10DEFchar *dptr = decoded18DEF*dptr =28DEF*dptr = 16* d
15、igit high + digit low31DEF*dptr = *eptr33DEF+dptr36DEF*dptr = 0可能的路径数为:0 测试用例:无DptrNodeTypeCode10DEFchar *dptr = decoded18USE*dptr =28USE*dptr = 16* digit high + digit low31USE*dptr = *eptr33USE ,DEF+dptr36USE*dptr = 0可能的路径数为:2X5 =10P1: 10-11-12-14-15-16-18P2: 10-11-12-14-15-16-20-22-23-24-28P3: 10-
16、11-12-14-15-16-20-31 P4 : 10-11-12-14-15-16-20-31-33-34-12-36P5: 10-11-12-14-15-16-20-31-33P6: 33-34-12-14-15-16-18P7: 33-34-12-14-15-16-20-22-23-24-28P8: 33-34-12-14-15-16-20-31P9: 33P10: 33-34-12-36约简后:P1: 10-11-12-14-15-16-18P2: 10-11-12-14-15-16-20-22-23-24-28P3: 10-11-12-14-15-16-20-31-33-34-12
17、-36P4: 33-34-12-14-15-16-18P5: 33-34-12-14-15-16-20-22-23-24-28P6: 33-34-12-14-15-16-20-31测试用例:编号执行条件输入期望输出实际输出路径001数据流测试(+,=)return okreturn ok10-11-12-14-15-16-18002数据流测试(% 3 ,=)return okreturn ok10-11-12-14-15-16-20-22-23-24-28003数据流测试($,=)return okreturn ok10-11-12-14-15-16-20-31-33-34-12-36004数
18、据流测试(3 +,=)return okreturn ok33-34-12-14-15-16-18005数据流测试(+%3 ,=)return okreturn ok33-34-12-14-15-16-20-22-23-24-28006数据流测试(+$,=)returnreturn33-34-12-14-15-16-20-31OkNodeTypeCode11DEFint ok=026DEFok=137USEreturn ok可能的路径数为:1X 2=2P1: 11-12-36-37P2: 26-33-34-12-36-37测试用例:编号执行条件输入期望输出实际输出路径001数据流测试(,=)return okreturn ok11-12-36-37002数据流测试(%- 3 ,=)return okreturn ok26-33-34-12-36-37CNodeTypeCode14DEFchar c15DEFc = *eptr16USEif (c = +)20USEelse if (c =%)可能的路径数为:2X 2=4P1:14-15-16P2:14-15-16-20P3:15-16P4:15-16-20约简后:P:14-15-16-20测试用例:编号执行条件输入期望输出实际输出路径001数据流测试(=,=)return okreturn ok14-15-16-20di
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2024年烟酒批发业务协议模板
- 2025年兽用生物制品项目提案报告模板
- 2025年汽车大灯项目规划申请报告
- 2025年水电自动化项目提案报告模式
- 开学军训心得体会15篇
- 入职的邀请函八篇
- 2021年度社团活动个人总结【十二篇】
- 个人述职报告怎么写【12篇】
- 昆虫记读书笔记6篇
- 活动计划模板七篇
- 第六单元(整体教学课件)七年级语文上册大单元教学名师备课系列(统编版2024)
- 垃圾填埋厂租地合同范本
- 汉语词汇与文化智慧树知到期末考试答案章节答案2024年浙江师范大学
- 科研设计及研究生论文撰写智慧树知到期末考试答案2024年
- 大学《思想道德与法治》期末考试复习题库(含答案)
- 铁路基础知识考试题库500题(单选、多选、判断)
- 2022年合理使用抗生素试题
- Smith圆图的Matlab实现及应用
- 防止机组非计划停运措施(锅炉专业)
- 如何同步同时接收老公老婆微信的实用教程
- 慕安德烈文集
评论
0/150
提交评论