2023年6月21日发(作者:)
2018年下半年 软件评测师 下午试卷答案
第一题
问题:1.1 (3分)
请针对上述C程序给出满足100%DC(判定覆盖)所需的逻辑条件。
本问题考查白盒测试用例设计方法:判定覆盖法。
判定覆盖指设计足够的测试用例,使得被测程序中每个判定表达式至少获得一次“真”值和“假”值,从而使程序的每一个分支至少都通过一次。本题中程序有3个判定,所以满足判定覆盖一共需要6个逻辑条件。
问题:1.2 (8分)
请画出上述程序的控制流图,并计算其控制流图的环路复杂度V(G)。
控制流图如下,环路复杂度V(G)=4
本问题考查白盒测试用例设计方法:基本路径测试法。涉及到的知识点包括:根据代码绘制控制流图、计算环路复杂度。
控制流图是描述程序控制流的一种图示方式,它由节点和定向边构成。控制流图的节点代表一个基本块,定向边代表控制流的方向。
程序的环路复杂度等于控制流图中判定节点的个数加1,本题控制流图中判定节点个数为3,所以V(G)=4。 问题:1.3 (4分)
请给出问题2中控制流图的线性无关路径。
线性无关路径:
1.1-2-8
2.1-2-3-4-2…8
2...8
2...8
本问题考查白盒测试用例设计方法:基本路径法。涉及到的知识点包括:根据控制流图和环路复杂度给出线性无关路径。
线性无关路径是指包含一组以前没有处理的语句或条件的路径。从控制流图上来看,一条线性无关路径是至少包含一条在其他线性无关路径中从未有过的边的路径。程序的环路复杂度等于线性无关路径的条数,所以本题中应该有4条线性无关路径。
第二题
问题:2.1 (7分)
采用等价类划分法对该程序进行测试,等价类表如表2-3所示,请补充表2-3中空(1)-(7)。
表2-3 等价类
(1) P
(2) 1
(3) 4,5
(4) 最多保留两位小数的正浮点数
(5) 除M/G/P之外的单个字母
(6) 小于1的整数
(7) 非正的浮点数
本问题考查等价类划分法中等价类表的构造。
等价类划分法的等价类表是把程序的输入域按规则划分为若干子集。
本题中L,C由多个输入值构成,并且需要对每个(或者每组)输入值分别处理,按规则可以划分为n个有效等价类(每个或者每组值确定一个有效等价类)和一个无效等价类(所有不允许输入值的集合)。
对L来说,分成3个有效等价类(L分别取M、G、P)和1个无效等价类(其他情况),而这个无效等价类又可以进一步细分为非字母、非单个字母以及除M/G/P之外其他字母。 对C来说,分成4个有效等价类(C分别取1、2或3、4或5、6)和1个无效等价类(其他情况),而这个无效等价类又可以进一步细分为非整数、小于1的整数以及大于6的整数。
对A来说,规定了输入值集合必须满足的条件(即最多两位小数的正浮点数),根据规则可以划分为1个有效等价类(最多两位小数的正浮点数)和3个无效等价类(非浮点数,非正的浮点数,多于两位小数的正浮点数)。
问题:2.2 (13分)
根据以上等价类表设计的测试用例如下表所示,请补充表2-4中空(1)-(13)。
表2-4 测试用例
(1) 300
(2) 100
(3) 3,6,8
(4) 6
(5) 非字母,如1
(6) 非单个字母,如GG
(7) N/A
(8) 非整数,如A
(9) 1,8,13
(10) 大于6的整数,如7
(11) 非浮点数,如A
(12) 非正浮点数,如0
(13) 多于两位小数的正浮点数,如500.123
本问题考査等价类划分法中根据等价类表编写测试用例。
在编写等价类划分法的测试用例时,如果输入全部都来自有效等价类,则从每个有效等价类选取一个代表元素作为输入,如果要考虑无效等价类,则每次只选取一个无效等价类,其余输入都从有效等价类中选取。
第三题
问题:3.1 (6分)
系统前端采用HTML5实现,以使用户可以通过电脑和不同移动设备的浏览器进行访问。请设计兼容性测试矩阵,对系统浏览器兼容性进行测试。
本题考查Web应用测试相关知识。Web应用测试除了类似传统软件系统测试的性能测试、压力测试等之外,还需要测试页面、链接、浏览器、表单和可用性等多个方面,由于对Web应用访问的大众化特点,对安全性尤其要重视。
此类题目要求考生阅读题目对现实问题的描述,根据对问题的分析,回答测试有关的问题。本题目说明和问题中,除了功能背景之外,给出了HTML5、兼容性、应用性能指数的概念等技术点。
本问题考查Web应用兼容性测试的内容。本题给出系统前端采用HTML5加以实现,使用户可以通过电脑和不同移动设备的浏览器进行正确访问。而Web应用用户所使用环境的不确定性,使得Web应用需要在包括移动端在内不同平台的不同浏览器上正确显示,并且所有JavaScript、AJAX脚本和认证功能正常工作,兼容性测试更为重要。兼容性测试矩阵是进行兼容性测试的有效工具,针对该应用需支持的不同移动设备进行操作系统平台和浏览器的兼容性测试。包括移动操作系统Windows Phone、iOS和Android等,与其上可以使用的浏览器移动版IE、UCWEB、Google Chrome、Android browser和Safari等进行结合,构建兼容性二维矩阵,行列分别表示操作系统平台和浏览器。测试时分别在单元格记录操作系统和浏览器组合的测试情况。
问题:3.2 (8分)
客户交易时,前端采用表单提交价格(正整数,单位:元)和中介费比例(0到1之间的小数,保留小数点后2位),针对这一功能设计4个测试用例。
测试一:1234567,0.05(说明:分别为任何正整数、0到1之间且保留2位小数的数值);
测试二:1234567.5,0.12(说明:分别为任何非正整数、0到1之间且保留2位小数的数值);
测试三:1234567,1.18(说明:分别为任何正整数、不满足“0到1之间且保留2位小数的数值”);
测试四:体现安全性的测试输入:其中任意输入域包含任何HTML,如:,或任何脚本如: