一、【C程序】
本题考查白盒测试法及应用。
本问题考查白盒测试用例设计方法中的判定覆盖法。
判定覆盖指设计足够的测试用例,使得被测程序中每个判定表达式至少获得一次“真”值和“假”值,从而使程序的每一个分支至少都通过一次。本题中程序有3个判定,所以满足判定覆盖一共需要6个逻辑条件。
问题:1.2 (8分)
请画出上述程序的控制流图,并计算其控制流图的环路复杂度V(G)。
控制流图
问题:2.1 (5分)
采用等价类划分法对该程序进行测试,等价类表如下表所示,请补充表2-3中空(1)~(5)。
(1) 1000
(2)大于等于499.50小于等于500.49之间的最多两位小数的浮点数
(3) 3,6,8
(4)其他日期(除每月9日、19日,11月11日,12月12日)
(5) 非字母
(6) N/A
(7)除M/S/P之外的单个字母,如A
(8) 1,7,12
(9)多于两位小数的正浮点数,如500.123
本问题考查等价类划分法中根据等价类表编写测试用例能力。
在编写等价类划分法的测试用例时,如果输入全部都来自有效等价类,则从每个有效等价类选取一个代表元素作为输入,如果要考虑无效等价类,则每次只选取一个无效等价类,其余输入都从有效等价类中选取
问题:2.3 (6分)
如果规定了单次刷卡的积分上限为20000( 即S取值大于等于0且小于等于20000),则还需要针对S的取值补充一些测试用例。假设采用等价类划分法和边界值分析法来补充用例,请补充表2-5、表2-6中的空(1)~(6)。
本问题考查Web应用兼容性测试的内容。Web应用的兼容性是测试重要方面,包括:浏览器兼容性、操作系统平台兼容性、移动浏览、打印选项等。本题给出系统前端采用 HTML5加以实现,需要通过不同移动设备、操作系统和浏览器进行访问,因此需要设计兼容性测试矩阵,针对不同移动设备进行操作系统平台和浏览器的兼容性测试。包括移动操作系统Windows Phone、iOS和Android等,与其上可以使用的浏览器移动版IE、UCWEB、Google Chrome、Android browser和Safari等进行结合,构建兼容性二维矩阵,行列分别表示操作系统平台和浏览器。测试时分别在单元格记录操作系统和浏览器组合的测试情况,如下表所示。
问题:3.3 (8分)
针对用户手机 码获取验证码进行注册的功能,设计4个测试用例。(假设合法手机 码为11位数字,验证码为4位数字)
第一类:1234565432A或1234565432或123456543210,2017 (说明:针对手机 不合法字符输入、手机 长度少于11位、手机 长度大于11位);
第二类:12345654321,2017 (说明:针对合法的手机 码和正确的验证码);
第三类:12345654321,201x或201或20111 (说明:针对合法的手机 码和错误的验证码);
第四类:体现安全性的测试输入:其中任意输入域包含任何HTML,如:,或任何脚本如: