- 1、本文档共24页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
软件测试技术实验报告册课案
河南工程学院
计算机学院
软件测试技术
实验报告册
2014年9月
目录
实验一 1
实验二 5
实验三 10
实验四 13
实验五 16
实验六 19
附录 22
实验一、黑盒测试
实验目的
1、熟练掌握黑盒测试方法的相关知识和方法;
2、熟练等价类划分方法、边界值分析法、判定表方法和因果图法;
3、掌握基本的测试用例的设计。
实验内容
1.题目一:电话号码问题某城市电话号码由三部分组成。它们的名称和内容分别是:
(1)地区码:空白或三位数字;
(2)前 缀:非0或1的三位数字;
(3)后 缀:4位数字。
假定被测程序能接受一切符合上述规定的电话号码,拒绝所有不符合规定的电话号码。根据该程序的规格说明,作等价类的划分,并设计测试方案。
2.题目二:三角形问题
根据下面给出的规格说明,利用等价类划分的方法,给出足够的测试用例。
“一个程序读入三个整数。把此三个数值看成是一个三角形的三个边。这个程序要打印出信息,说明这个三角形是三边不等的、是等腰的、还是等边的。”
3.题目三:日期问题
用决策表测试法测试以下程序:该程序有三个输入变量month、day、year(month 、 day和year均为整数值,并且满足:1≤month≤12和1≤day≤31),分别作为输入日期的月份、日、年份,通过程序可以输出该输入日期在日历上隔一天的日期。例如,输入为2004 年11月29日,则该程序的输出为2004年12月1日。
(1) 分析各种输入情况,列出为输入变量 month 、 day 、 year 划分的有效等价类。
(2) 分析程序的规格说明,并结合以上等价类划分的情况,给出问题规定的可能采取的操作(即列出所有的动作桩)。
(3) 根据 (1) 和 (2) ,画出简化后的决策表。
4.题目四:找零钱最佳组合
假设商店货品价格(R)皆不大于100元(且为整数),若顾客付款在100元内 (P) , 求找给顾客最少货币个(张)数?(货币面值50元10 元,5 元,1元四 种 )
1.题目一:使用逻辑覆盖测试方法测试以下程序段void DoWork (int x,int y,int z)
{
1???????????????int k=0,? j=0;
2???????????????if ( (x3)(z10) )
3???????????????{
4?????? k=x*y-1;
5????????? j=sqrt(k);
6??? }
7??? ?if((x==4)||(y5))
8??? j=x*y+10;
9??? ?j=j%3;
10?}
说明:程序段中每行开头的数字(1~10)是对每条语句的编号。
(1)画出程序的控制流图(用题中给出的语句编号表示)。
(2)分别以语句覆盖、判定覆盖、条件覆盖、判定/条件覆盖、组合覆盖和路径覆盖方法设计测试用例,并写出每个测试用例的执行路径(用题中给出的语句编号表示)。
2.题目二:三角形问题
在三角形计算中,要求输入三角型的三个边长:A、B 和C。当三边不可能构成三角形时提示错误,可构成三角形时计算三角形周长。若是等腰三角形打印“等腰三角形”,若是等边三角形,则提示“等边三角形”。画出程序流程图、控制流程图、计算圈复杂度V(g),找出基本测试路径。
3.题目三:计算生日是星期几
已知公元1年1月1日是星期一。编写一个程序,只要输入年月日,就能回答那天是星期几。应用逻辑覆盖方法和基路径测试方法为上面的问题设计测试用例。??
4.题目四:选择排序
下面是选择排序的程序,其中datalist是数据表,它有两个数据成员:一是元素类型为Element的数组V,另一个是数组大小n。算法中用到两个操作,一是取某数组元素V[i]的关键码操作getKey ( ),一是交换两数组元素内容的操作Swap( ):
???void SelectSort ( datalist list )
{?????? ????????????/对表list.V[0]到list.V[n-1]进行排序,? n是表当前长度。
?????? ??? for ( int i = 0; i list.n-1; i++ )
{ int k = i;??? //在list.V[i].key到list.V[n-1].key中找具有最小关键码的对象
????????????? for ( int j = i+1;? j list.n;? j++)
????????????? ???? if ( list.V[j].getKey ( ) list.V[k].getKey ( ) ) k = j;//当前具最小关键码的对象
????????????? ?? if ( k != i ) Swap ( list
文档评论(0)