东师17软件测试作业
文章目录
·黑盒测试
①等价类测试
1.三角形问题的等价类测试。
某程序规定:"输入三个整数 a 、 b 、 c 分别作为三边的边长构成三角形。通过程序判定所构成的三角形的类型,当此三角形为一般三角形、等腰三角形及等边三角形时,分别作计算 … "。用等价类划分方法为该程序进行测试用例设计。(三角形问题的复杂之处在于输入与输出之间的关系比较复杂。) 。
解答:以表格形式呈现,如下:
2.保险公司人寿保险保费计算程序的等价类测试
解答:以表格形式呈现,如下:
3.档案管理系统
设有一个档案管理系统,要求用户输入以年月表示的日期。假设日期限定在1990年1月~2049年12月,并规定日期由6位数字字符组成,前4位表示年,后2位表示月。现用等价类划分法设计测试用例,来测试程序的"日期检查功能"。
②边界值边界值分析法
1.NextDate 函数
NextDate 函数的边界值分析测试用例。包含三个变量:month 、 day 和 year ,函数的输出为输入日期后一天的日期。 例如,输入为 2006年3月 7日,则函数的输出为 2006年3月8日 。要求输入变量 month 、 day 和 year 均为整数值,并且满足下列条件: ①1≤month≤12、②1≤day≤31、③1912≤year≤2050
代码推荐链接
等价类测试用力推荐讲解1
多方法解该题推荐
一题多解推荐
测试用例图如下:
2.加法器边界值测试
加法器程序计算两个1~100之间整数的和。
对于加法器程序,根据输入要求可将输入空间划分为三个等价类,即
1个有效等价类(1~100之间),
两个无效等价类(<1,>100)。
但这种等价类划分不是很完善,我们只考虑了输入数据的取值范围,而没有考虑输入数据的类型,我们认为输入应为整数,但用户输入什么都有可能。
答案来源
解答:综合考虑输入数据的取值范围和类型划分等价类,其结果如下表所示:
加法器边界测试用例,如下
③因果图法
1.自动售货机
有一个处理单价为5角钱的饮料的自动售货机软件测试用例的设计。其规格说明如下:若投入5角钱或1元钱的硬币,押下〖橙汁〗或〖啤酒〗的按钮,则相应的饮料就送出来。若售货机没有零钱找,则一个显示〖零钱找完〗的红灯亮,这时在投入1元硬币并押下按钮后,饮料不送出来而且1元硬币也退出来;若有零钱找,则显示〖零钱找完〗的红灯灭,在送出饮料的同时退还5角硬币。
解答:分析说明,列出原因和结果。
画出因果图如下图所示。所有原因结点列在左边,所有结果结点列在右边。建立中间结点,表示处理的中
间状态。中间结点:
11.投入1元硬币且押下饮料按钮
12.押下K橙汁]或K啤酒习的按钮
13.应当找5角零钱并且售货机有零钱找.
14.钱已付清
转换成判定表,如下图:
设计测试用例如下:
④决策表法
1.维修问题
问题要求:”…对功率大于50马力的 机器、维修记录不全或已运行10年以上的机 器,应给予优先的维修处理…” 。这里假 定,“维修记录不全”和“优先维修处理” 均已在别处有更严格的定义 。请建立判定表。
参考链接
解答:进行优先级处理,判定如下: 有两种方法可以进行合并。(1)合并1357、48项
有两种方法可以进行合并。(2)合并1357、68项
但这样合并之后我们看看后三条规则,写出的用例逻辑性会变差,让看的人感觉莫名其妙。比如第二张表的第4条规则,写出用例标题应该是“验证功率不到50马力且运行不超过10年的机器的处理优先级”,这样会给人感觉功率和运行年限之间存在一定的逻辑关系, 但其实功率与马力之间才是强逻辑关系,功率与运行年限之间的逻辑关系是比较弱的。所以建议还是不合并为好,不要为了节省几个用例去牺牲整个用例的逻辑性。这道题只把1357列合并就可以了,也就是说对于运行超过10年的机器,不管它的马力和维修记录如何都必须进行优先处理。