软件测试课程设计

合集下载
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

目录
一、课程设计目得ﻩ1
二、课程设计题目描述与要求------------------------------------------------------------------------------------ 1
2、1白盒测试 --------------------------------------------------------------------------------------------------- 1
2、1、1原理ﻩ1
2、1、2题目描述 -------------------------------------------------------------------------------------- 1
2、1、3要求ﻩ1
2、2黑盒测试ﻩ1
2、2、1原理ﻩ1
2、2、2题目描述ﻩ1
2、2、3要求 ---------------------------------------------------------------------------------------------- 2
三、课程设计报告内容ﻩ2
3、1白盒测试 --------------------------------------------------------------------------------------------------- 2
3、1、1程序代码--------------------------------------------------------------------------------------- 2
3、1、2执行方法ﻩ3
3、1、3程序界面ﻩ3
3、1、4程序流程图ﻩ3
3、1、5程序流图ﻩ4
3、1、6白盒测试方法设计测试用例ﻩ5
3、2黑盒测试 ------------------------------------------------------------------------------------------------- 8
3、2、1程序代码 ------------------------------------------------------------------------------------- 8
3、2、2执行方法-------------------------------------------------------------------------------------- 9
3、2、3程序界面ﻩ9
3、2、4程序流程图--------------------------------------------------------------------------------- 10
3、2、5黑盒测试方法设计测试用例 ----------------------------------------------------------- 11
四、课程设计总结ﻩ16
16
五、参考文献ﻩ
一、课程设计目得
(1)掌握白盒测试用例得设计方法
(2)掌握白盒测试基本测试方法:分支覆盖、条件覆盖、基本路径测试。

(3)掌握黑盒测试用例得设计方法
(4)掌握黑盒测试基本测试方法:边界值、等价类、基于决策表得测试。

二、课程设计题目描述与要求
2、1白盒测试
2、1、1原理
白盒测试也称为结构测试或逻辑驱动测试,也就就是已知产品得内部工作过程,清楚最终生成得软件产品得计算机程序结构及其语句,按照程序内部得结构测试程序,测试程序内部得变量状体、逻辑结构,运行路径等,检验程序中每条路就是否都能按照预定得要求正确工作,检验程序内部得动作或运行就是否符合设计规格要求,所有内部成分就是否按规定正常进行。

2、1、2题目描述
将一个正整数分解质因数(1000之内)。

例如:输入90,打印出90=2*3*3*5。

2、1、3要求
提供执行代码、执行方法与程序界面;包括分析过程及测试用例及测试用例执行结果。

(1)分支覆盖测试方法设计测试用例
(2)条件覆盖测试方法设计测试用例
(3)基本路径测试方法设计测试用例
2、2黑盒测试
2、2、1原理
黑盒测试方法,也称功能测试或就是数据驱动测试方法。

在测试时,把程序瞧成就是一个不能打开得黑盒子。

在完全不考虑程序内部结构与内部特性得情况下,测试人员针对软件直接进行得测试。

检查系统功能就是否按照需求规格说明书得规定正常使用,就是否能正常得接收输入数据而输出正确得结果。

检查相应得文档就是否采用了正确得模板,就是否满足规范要求等。

黑盒测试不关注内部结构,而就是着眼于程序外部得用户界面,关注软件得输入输出,关注用户需求,从用户得角度验证软件功能,实现端到端得测试。

黑盒测试得方法根据用户得体验评估软件得质量,验证产品得每个功能就是否都能正常使用,就是否满足用户需求。

2、2、2题目描述
运输公司对用户计算运费,路程越远运费越低。

设每公里每吨货物得基本运费为p,货物重量为w,距离为s,折扣为d,
标准如下:
s<250没有折扣
250≤s<500 2%折扣
500≤s<1000 5%折扣
1000≤s<20008%折扣
2000≤s 10%折扣
每吨每千米单价p不能超过100RMB,路程不能超过5000千米。

2、2、3要求
提供执行代码、执行方法与程序界面;包括分析过程及测试用例及测试用例执行结果
(1)用边界值测试方法设计测试用例
(2) 用等价类测试方法设计测试用例
(3)用基于决策表得测试方法设计测试用例
三、课程设计报告内容
3、1白盒测试
3、1、1程序代码
public class ceshi {
public static void main(String[] args) {
Scanner a = new Scanner(System、in);
int e=0;
int n;
do{
System、out、println("请输入一个正整数:");
n = a、nextInt();
if(n>1000){
ﻩSystem、out、println("input error!");
e = 1;
}else{
e=0;
}}while(e==1);
for(int k=2;k<=n/2;k++){
if(n%k==0){
System、out、print(k+"*");
n= n/k; //用递归把n重新定值
k=2;//这步很重要,让for循环重新执

}
}
System、out、print(n); //把最后一个质因数输出
}
}
3、1、2执行方法
通过编写得java程序在Eclipse上运行
3、1、3程序界面
图3-1程序界面图
3、1、4程序流程图
图3-2分解质因数得程序流程图3、1、5程序流图
图3-3计算天数得程序流图
3、1、6白盒测试方法设计测试用例
(1)子任务一:分支覆盖测试方法设计测试用例
原理:分支覆盖,使得程序中每一个分支都至少被执行一次。

用分支覆盖测试方法设计测试用例,按照下列步骤进行:
为了达到分支覆盖得目标,就要设法设计测试用例,使得②、③、④得各个分支被执行一次,满足表3-1中判断结果
表3-1 7个判断结果表
这样,可以设计两个测试用例,可以覆盖这些分支。

N=12:经过得路径就是①
②③
④⑥③④⑥③④⑦③⑤ 测试用例执行结果:
② N<0 or N>1000;;如N=-1,-2,-3,、、、 or N=1001,1002,、、、 0<N<1000;如N=1,2,3,、、、,999
③ K<=N /2成立 K<=N /2不成立
④ N %k=0成立 N%k=0不成立
N1=-1,N2=1经过得路径为①②①③⑤
测试用例执行结果:
(2)子任务二:条件覆盖测试方法设计测试用例
原理:程序中每一个条件至少有一次被满足
为了达到条件覆盖得目标,就要设法设计测试用例,使得每个条件被执行一次,即以下12种组合都要覆盖:
N>=1000,K<=N/2,N%K=0 测试用例:N=1000
N>=1000,K>N/2,N%K=0ﻩ测试用例:无
N>=1000,K<=N/2,N%K!=0ﻩ测试用例:N=1001
N>=1000,K>N/2,N%K!=0ﻩﻩ测试用例:无
N<=0,K<=N/2,N%K=0ﻩﻩ测试用例:ﻩ无
N<=0,K>N/2,N%K=0ﻩ测试用例:N=-2
N<=0,K<=N/2,N%K!=0ﻩ测试用例:无
N<0,K>N/2,N%K!=0ﻩ测试用例:N=-1
O<N<1000,K<=N/2,N%K=0ﻩ测试用例:N=4
O<N<1000,K>N/2,N%K=0 ﻩ测试用例:无
O<N<1000,K<=N/2,N%K!=0 测试用例:N=5
O<N<1000,K>N/2,N%K!=0ﻩ测试用例:N=1
由以上组合可得可以设计测试用例N=1,N=5,N=4,N=-1,N=-2,N=1000,N=1001
测试用例执行结果:
图3-4程序结果图
(3)子任务3:基本路径测试方法设计测试用例
原理:顾名思义,路径覆盖就就是设计所有得测试用例,来覆盖程序中得所有可能得执行路径。

基本路径测试法通过以下5个基本步骤来实现。

1、程序流程图
ﻩﻩﻩﻩ图3-5程序流程图
2、计算程序环境复杂性
通过对程序得控制流程图得分析与判断来计算模块复杂性度量,从程序得环路复杂性可导出程序基本路径集合中得独立路径条数。

环境复杂性可以用V(G)来表示,其计算方法有:
V(G)=区域数目。

区域就是由边界与节点包围起来得形状所构成得,计算区域时应包括图外部区,将其作为一个区域。

图3-5得区域数目就是4,也就就是有4条基本路径。

V(G)=边界数目-节点数目+2。

按此计算,也就是4。

V(G)=判断节点数目+1。

如图3-5所示,判断节点有2、3与4,则V(G)=3+1=4。

3、确定基本路径
通过程序流程图得基本路径来导出基本得程序路径得集合。

通过上面得分析与计算,知道图3-5所示程序有4条基本路径,下面给出一组基本路径。

在一个基本路径集合里,每一条路径就是唯一得。

(1)1-2-3-5
(2)1-2-1-3-5
(3)1-2-3-4-6-3-5
(4)1-2-3-4-7-3-5
4、准备测试用例,确保基本路径组中得每一条路径被执行一次。

(1)N=1可以覆盖路径1-2-3-5。

(2) N1=-1,N2=1可以覆盖路径1-2-1-3-5。

(3) N=4可以覆盖路径1-2-3-4-6-3-5。

(4) N =5可以覆盖路径1-2-3-4-7-3-5。

5、图形矩阵就是在基本路径测试中起辅助作用得软件工具,利用它可以实现自动地确定一个基本路径集。

如下表3-2所给出得图形矩阵
表3-2图形矩阵得表示法表
3、2黑盒测试 3、2、1程序代码
imp or t java 、u til 、Sca nner; pub lic class Test2 {
ﻩpu bl ic static voi d main(String[] args) { ﻩﻩ// T OD O A uto-generat ed m ethod st ub floa t p,w ,s,f,d ;
Sys tem 、out 、pr intln ("请输入每吨每千米得单价,运货量与路
程:");
ﻩ Sca nner sca =new Scanner(Sy stem 、in); ﻩ p=sca 、n ex tFloat(); ﻩ w=sca 、n ex tFloat ();
ﻩs=sca 、nextF lo at();

if(p<=0||w<=0||s<=0||p>100)
ﻩﻩ Sy stem 、out 、pr int ln("您输入得数据有误!"); ﻩﻩ el se
ﻩ {
ﻩﻩ i f(s<250) ﻩﻩ d=0;
else i f(250<=s&&s<500)
ﻩﻩﻩﻩd=(fl oat) 0、02;
ﻩﻩ el se if(500<=s&&s <1000)
ﻩﻩd=(float) 0、05;
ﻩﻩﻩelse if(1000<=s&&s<2000)
ﻩd=(float) 0、08;
ﻩﻩelse
ﻩﻩﻩd=(float) 0、10;
ﻩﻩﻩf=p*w*s*(1-d);
System、out、println("该用户得运费为"+f); ﻩ }
ﻩﻩ}
}
3、2、2执行方法
用java编写在Eclipse上运行
3、2、3程序界面
图3-6执行结果图
3、2、4程序流程图
图3-7流程图
3、2、5黑盒测试方法设计测试用例
(1)子任务一:用边界值测试方法设计测试用例
原理:边界值分析法就就是针对输入数据得边界条件进行分析以确定边界值,然后设计出对应边界值得测试用例。

使用边界值分析方法设计测试用例,首先应确定边界情况。

通常输入等价类与输出等价类得边界,就就是应着重测试得边界情况。

应当选取正好等于,刚刚大于,或刚刚小于边界得值做为测试数据,而不就是选取等价类中得典型值或任意值做为测试数据。

如下表3-3为边界值分析方法得测试用例
表3-3
边界值分析设计得测试用例
测试用例执行结果:
设置运费单价为100,货重为20吨
路程s 折扣 总运费 249 0 498000 250 0、02 490000 251 0、02 491960 499 0、02 978040 500 0、05 950000 501 0、05 951900 999 0、05 1000 0、08 1001 0、08 1999 0、08 2000 0、10 2001
0、10
图3-8执行结果图
(2)子任务二:用等价类测试方法设计测试用例
原理:等价类划分方法就是把所有可能得输入数据,即程序得输入数据集合划分成若干个子集(即等价类),然后从每一个等价类中选取少数具有代表性得数据作为测试用例。

测试用例由有效等价类与无效等价类得代表组成,从而保证测试用例具有完整性与代表性。

利用这一方法设计测试用例可以不考虑程序得内部结构,以需求
规格说明书为依据
,
选择适当得典型子集,认真分析与推敲说明书得各项需求,特别就是功能需求,尽可能多地发现错误。

表3-4为合理与不合理等价类得划分
表3-4合理等价类与不合理等价类表
根据上表3-4设计测试用例 ①p =100 w=20 s=300 ②p =120,w =20,s=30 ③p=100,w =-20,s=300 ④p=100,w=20,s=-300 ⑤p =-100,w=-20,s =-300 执行结果:
输入
合理等价类 不合理等价类 每吨每千米单价p ①1~100
②小于1 ③大于100 重量w ④大于0 ⑤小于等于0 路程 ⑥大于0 ⑦小于等于0
图3-9执行结果图
(3)子任务三:用基于决策表得测试方法设计测试用例
原理:在一些数据处理问题中,某些操作就是否实施依赖于多个逻辑条件得取值。

在这些逻辑条件取值得组合所构成得多种情况下,分别执行不同得操作。

处理这类问题得一个非常有力得分析与表达工具就是判定表,或称决策表。

制作决策表一般经过下面4个步骤。

(1)列出所有得条件桩与动作桩。

(2)填入条件项。

(3)填入动作项,制定出事判定表。

(4)简化、合并相似规则或者相同动作。

经过分析条件桩为:p<=0||w<=0||s<=0||p>100、s<250、250≤s<500 、500≤s<1000、1000≤s<2000、2000≤s 。

动作桩有四种:有效数据、无效数据、有折扣与无折扣。

如果就是无效数据就不需要判断后5个条件。

每种折扣都有对应得范围条件,符合一种就不需要判断其她条件
所以就需要设计6个测试用例。

(1)无效数据。

(2)路程小于250得。

(3)路程在250与500之间得。

(4)路程在500与1000之间得。

(5)路程在1000与2000之间得。

(6)路程超过2000得。

如表3-5所示为优化得决策表。

表3-5优化得决策表
四、课
















正整数分解质因数,在编程过程中,考虑了多种情况,
通过画程序流程图对程序充分地了解,对白盒测试有了一定得认识,学会了一些
基本得用法与操作,测出了一些代码规范得问题,能够分析测试结果了。

黑盒测
试选择得就是运输公司对用户计算运费,学会了边界值、等价类、决策表测试方法,对于边界值测试,边界值时不能只取边界那一点,也需要取边界有效最大值与
边界有效最小值。

而决策表测试要学会优化条件,降低组合,形成非常优化得决
策表。

通过此次软件测试得课程设计,深刻学习掌握了软件测试与软件测试过程得
基本方法与基本技术,关于黑盒、白盒得测试用例得设计,也进行了认真学习研究,从而进一步提高了自己在程序上得编写能力,以及一些之前未触及得问题,为
即将踏上社会得自己又做了一份理论与实践得准备。

五、参考文献
《软件测试方法与技术》第二版朱少民主编。

相关文档
最新文档