(总分:75.00,做题时间:150分钟)
一、单项选择题
(总题数:58,分数:75.00)
1.在汇编指令中,操作数在某寄存器中的寻址方式称为(分数:1.00)
A.直接
B.变址
C.寄存器(正确答案)
D.寄存器间接
解析:
2.计算机系统中,虚拟存储体系由( )垄两级存储器构成。(分数:1.00)
A.主存一辅存(正确答案)
B.寄存器一Cache
C.寄存器一主存
D.Cache一主存
解析:
3.程序计数器(PC)是( )中的寄存器。(分数:1.00)
A.运算器
B.控制器(正确答案)
C.Cache
D.I/O设备
解析:
本题考查计算机系统基础知识。
CPU主要由运算器、控制器、寄存器组、内部总线等部件组成。 其中,控制器由程序计数器、指令寄存器、指令译码器、时序产生器和操作控制器组成,它是发布命令的"决策机构",即完成协调和指挥整个计算机系统的操 作。 运算器由算术逻辑单元( ALU)、累加寄存器、数据缓冲寄存器和状态条件寄存器组成,它是数据加工处理部件。CPU中的寄存器可分为专用寄存器和通用寄存器,通用寄存器用途广泛并可由程序员规定其用途,其数目因处理器不同有所差异。专用寄存器的功能是专门 的,有数据缓冲寄存器(DR)、指令寄存器(IR)、程序计数器(PC)、地址寄存器(AR)、累加寄存器(AC)、状态条件寄存器(PSW)等。
4.中断向量提供(分数:1.00)
A.外设的接口地址
B.待传送数据的起始和终止地址
C.主程序的断点地址
D.中断服务程序入口地址(正确答案)
解析:
5.在计算机系统串憾线宽度分为地址总线宽度和数据总线宽度。若计算机中地址总线的宽度为32位,则最多允许直接访问主存储器一( )一的物理空间。(分数:1.00)
A.40M
B.4GB(正确答案)
C.40GB
D.400GB
解析:
本题查计算机系统方面的基本常识。
在计算机中总线宽度分为地址总线宽度和数据总线宽度。其中,数据总线的宽度(传输线根数)决定了通过它一次所能传递的二进制位数。显然,数据总线越宽则每次传递的位数越多,因而,数据总线的宽度决定了在主存储器和CPU之间数据交换的效率。地址总线宽度决定了CPU能够使用多大容量的主存储器,即地址总线宽度决定了CPU能直接访问的内存单元的个数。假定地址总线是32位,则能够访问232 =4GB个内存单元。
6.为了提高计算机磁盘存取效率,通常可以(分数:1.00)
A.利用磁盘格式化程序,定期对ROM进行碎片整理
B.利用磁盘碎片整理程序,定期对内存进行碎片整理
C.利用磁盘碎片整理程序,定期对磁盘进行碎片整理(正确答案)
D.利用磁盘格式化程序,定期对磁盘进行碎片整理
解析:
7.安全的电子邮件协议为(分数:1.00)
A.MIME
B.PGP(正确答案)
C.POP3
D.SMTP
解析:
8.操作系统通道( )来组织和管理外存中的信息。(分数:1.00)
A.字处理程序
B.设备驱动程序
C.文件目录和目录项(正确答案)
D.语言翻译程序
解析:
9.下列操作系统中,( )保持网络系统的全部功能,并具有透明性、可靠性和高性能等特性。(分数:1.00)
A.批处理操作系统
B.分时操作系统
C.分布式操作系统(正确答案)
D.实时操作系统
解析:
10.在进程状态转换过程中,可能会引起进程阻塞的原因是(分数:1.00)
A.时间片到
B.执行V操作
C.I/O完成
D.执行P操作(正确答案)
解析:
11.假设系统有n个进程共享资源R,且资源R的可用数为3,其中n≥3 0若采用PV操作,则信号量S的取值范围应为(分数:1.00)
A.-1~n-1
B.-3~3
C.-(n-3)~3(正确答案)
D.-(n-l)~1
解析:
已知函数f0.g0的定义如下所示,调用函数f时传递给形参x的值是5 0若g(a)采用引用调用(call by reference)方式传递参数,则函数f的返回值为(12);若g(a)采用值调用(call by value)的方式传递参数,则函数f的返回值(13)。其中,表达式“x>>1”的含义是将x的值右移1位,相当于x除以2。
(分数:2)
(1).(分数:1)
A.35
B.32
C.11(正确答案)
D.7
解析:
(2).(分数:1)
A.35
B.32
C.11
D.7(正确答案)
解析:
12.设数组a[0..n-l,0..m=1](n>1,m>l)中的元素以行为主序存放,每个元素占用4个存储单元,则数组元素a[i,j](0≤i) A.(j*m+i)*4 B.(i*m+i)*4(正确答案) C.(J*n+i)*4 D.(i*m+j)*4 解析: 13.线性表采用单循环链表存储的主要优点是(分数:1.00) A.从表中任一结点出发都能遍历整个链表(正确答案) B.可直接获取指定结点的直接前驱和直接后继结点 C.在进行删除操作后,能保证链表不断开 D.与单链表相比,更节省存储空间 解析: 14.若某线性表长度为n且采用顺序存储方式,则运算速度最快的操作是(分数:1.00) A.查找与给定值相匹配的元素的位置 B.查找并返回第i个元素的值(1≤i≤n)(正确答案) C.删除第i个元素(1≤i 解析: 15.设元素a、b、c、d依次进入一个初始为空的栈,则不可能通过合法的栈操作序列得到(分数:1.00) A.a b c d B.b a c d C.c a b d(正确答案) D.d c b a 解析: 16.若要求对大小为n的数组进行排序的时间复杂度为O(nlog2n),且是稳定的(即如果待排序的序列中两个数据元素具有相同的值,在排序前后它们的相对位置不变),则可选择的排序方法是(分数:1.00) A.快速排序 B.归并排序(正确答案) C.堆排序 D.冒泡排序 解析: 17.对于一般的树结构,可以采用孩子一兄弟表示法,即每个结点设置两个指针域,一个指针(左指针)指示当前结点的第一个孩子结点,另一个指针(右指针)指示当前结点的下一个兄弟结点。某树的孩子一兄弟表示如下图所示。以下关于结点D与E的关系的叙述中,正确的是 (分数:1.00) A.结点D与结点E是兄弟 B.结点D是结点E的祖父结点 C.结点E的父结点与结点D的父结点是兄弟 D.结点E的父结点与结点D是兄弟(正确答案) 解析: 18.某企业研发信息系统的过程中( )不属于数据库管理员(DBA)的职责。(分数:1.00) A.决定数据库中的信息内容和结构 B.决定数据库的存储结构和存取策略 C.进行信息系统程序的设计和编写(正确答案) D.定义数据的安全性要求和完整性约束条件 解析: 19.某高校人事管理系统中,规定讲师每课时的教学酬金不能超过100元,副教授课时的学酬金不能超过130元,教授每课时的教学酬金不能超过160元。这种情况下所设置的数据完整性约束条件称之为(分数:1.00) A.用户定义完整性(正确答案) B.实体完整性 C.主键约束完整性 D.参照完整性 解析: 某教学管理数据库中,学生、课程关系模式和主键分别为:S(学号,姓名,性别,家庭住址,电话),关系S的主键为学号;C(课程号,课程名,学分),关系C的主键为课程号。假设一个学生可以选择多门课程,一门课程可以由多个学生选择。一旦学生选择某门课程必定有该课程的成绩。由于学生与课程之间的“选课”联系类型为(22)所以对该联系(23)。(分数:2) (1).(分数:1) A.n:m(正确答案) B.1:n C.n:1 D.1:l 解析: (2).(分数:1) A.不需要构建—个的关系模式 B.需要构建一个的关系模式,且关系模式为:SC(课程号,成绩) C.需要构建一个的关系模式,且关系模式为:SC(学生号,成绩) D.需要构建—个的关系模式,且关系模式为:SC(学生号,课程号,成绩)(正确答案) 解析: 20.查询“软件工程”课程的平均成绩、最高成绩与最低成绩之间差值的SQL语句如下: SELECT AVG(成绩)AS平均成绩,( ) FROM:C,SC WHERE C.课程名=‘软件工程’AND C课程号=SC.课程号;(分数:1.00) A.差值AS MAX(成绩)一MIN(成绩) B.MAX(成绩)一MIN(成绩)AS差值(正确答案) C.差值IN MAX(成绩)一MIN(成绩) D.MAX(成绩)一MIN(成绩)IN差值 解析: 21.能隔离局域网中广播风暴、提高带宽利用率的设备是(分数:1.00) A.网桥 B.集线器 C.路由器(正确答案) D.交换机 解析: 下面的协议中属于应用层协议的是(26),该协议的报文封装在(27)中传送。(分数:2) (1).(分数:1) A.SNMP(正确答案) B.ARP C.ICMP D.X.25 解析: (2).(分数:1) A.TCP B.IP C.UDP(正确答案) D.ICMP 解析: 22.某公司内部使用wb.xyz.com.cn作为访问某服务器的地址,其中wb是(分数:1.00) A.主机名(正确答案) B.协议名 C.目录名 D.文件名 解析: 23.如果路由器收到了多个路由协议转发的关于某个目标的多条路由,那么决定采用哪条路由的策略是(分数:1.00) A.选择与自己路由协议相同的 B.选择路由费用最小的 C.比较各个路由的管理距离(正确答案) D.比较各个路由协议的版本 解析: 24.下面是路由表的4个表项,与地址220.112.179.92匹配的表项是(分数:1.00) A.220.112.145.32/22 B.220.112.145./22 C.220.112.147./22 D.220.112.177./22(正确答案) 解析: 某开发小组欲开发一个软件系统,实现城市中不同图书馆的资源共享,包括实体资源和电子资源,共享规则可能在开发过程中有变化。客户希望开发小组能尽快提交可运行的软件,且可以接受多次交付。这种情况下最适宜采用(31)开发过程模型。主要是因为这种模型(32)。(分数:2) (1).(分数:1) A.瀑布 B.原型 C.增量(正确答案) D.螺旋 解析: (2).(分数:1) A.可以快速提交阶段性的软件产品(正确答案) B.需求变化对开发没有影响 C.减少用户适应和习惯系统的时间和精力 D.能够很好解决风险问题 解析: 某软件项目的活动图如下图所示,其中顶点表示项目里程碑,连接顶点的边表示包含的活动,边上的数字表示活动的持续时间(天),则完成该项目的最少时间为(33)天。活动BC和BF分别最多可以晚开始(34)天而不会影响整个项目的进度。 (分数:2) (1).(分数:1) A.11 B.15 C.16 D.18(正确答案) 解析: (2).(分数:1) A.0和7(正确答案) B.0和11 C.2和7 D.2和11 解析: 结构化开发方法中,(35)主要包含对数据结构和算法的设计。对算法设计时,其主要依据来自(36)描述算法时,(37)不是理想的表达方式。(分数:3) (1).(分数:1) A.体系结构设计 B.数据设计 C.接口设计 D.过程设计(正确答案) 解析: (2).(分数:1) A.数据流图 B.E-R图 C.状态-迁移图(正确答案) D.加工规格说明 解析: (3).(分数:1) A.流程图 B.决策图(正确答案) C.程序设计语言代码 D.伪代码 解析: 模块A的功能为:从数据库中读出产品信息,修改后存回数据库,然后将修改记录写到维护文件中。该模块内聚类型为(38)内聚。以下关于该类内聚的叙述中,正确的是(39)。(分数:2) (1).(分数:1) A.逻辑 B.时间 C.过程(正确答案) D.功能 解析: (2).(分数:1) A.是最低的内聚类型 B.是最高的内聚类型 C.不易于重用(正确答案) D.模块性好 解析: 某个应用中,需要对输入数据进行排序,输入数据序列基本有序(如输入为1,2,5,3,4,6,8,7)。在这种情况下,采用(40)排序算法最好,时间复杂度为(41)。(分数:2) (1).(分数:1) A.插入(正确答案) B.归并 C.堆 D.快速 解析: (2).(分数:1) A.O(n)(正确答案) B.O(nlgn) C.O(n^2) D.O(n^2lgn) 解析: 在结构化分析中,用数据流图描述(42)。当采用数据流图对银行客户关系管理进行分析时,(43)是一个加工。(分数:2) (1).(分数:1) A.数据对象之间的关系,用于对数据建模 B.数据在系统中如何被传送或变换,以及如何对数据流进行变换(正确答案) C.系统对外部事件如何响应,如何动作,用于对行为建模 D.系统中的数据对象和控制信息的特性 解析: (2).(分数:1) A.工作人员 B.账户 C.余额(正确答案) D.存款 解析: 以下关于用例图的叙述中,不正确的是(44)。图书馆管理系统需求中包含“还书”用例和“到书通知”用例,对于“还书”用例,应先查询该书是否有人预定,若有则执行“到书通知”“还书”用例和“到书通知’’用例是(45)关系,以下用例图中,(46)是正确的。管理员处理“还书”用例时,需要先执行“验证身份“用例,那么“还书”用例和“验证身份”用例之间是(47)关系。(分数:4) (1).(分数:1) A.系统用例图反映了整个系统提供的外部可见服务 B.统用例图对系统的协作建模(正确答案) C.用例图主要包含用例、参与者及其之间关系三个要素 D.系统用例图对系统的需求建模 解析: (2).(分数:1) A.关联 B.扩展(正确答案) C.包含 D.泛化 解析: (3).(分数:1) A. B. (正确答案) C. D. 解析: (4).(分数:1) A.关联 B.扩展 C.包含(正确答案) D.泛化 解析: 25.用面向对象方法设计了一个父类File和两个子类DiskFile和TapeFile,这两个子类继承了其父类的op曲方法,并给出不同鳆实现。不同的子类执行open方法时,有不同的行为,这种机制称为(分数:1.00) A.继承 B.多态(正确答案) C.消息传递 D.关联 解析: 26.在计算机系统中,系统的( )可以用MTTF/(1+MTTF)来度量,其中MTTF为平均无故障时间。(分数:1.00) A.可靠性(正确答案) B.可用性 C.可维护性 D.健壮性 解析: 27.修改现有软件系统的设计文档和代码以增强可读性,这种行为属于( )维护。(分数:1.00) A.正确性 B.适应性 C.完善性 D.预防性(正确答案) 解析: 28.以下不属于系统测试范畴的是(分数:1.00) A.单元测试(正确答案) B.安全测试 C.强度测试 D.性能测试 解析: 29.以下关于文档测试的说法中,不正确的是(分数:1.00) A.文档测试需要仔细阅读文档,检查每个图形 B.文档测试需要检查文档内容是否正确和完善 C.文档测试需要检查标记是否正确性 D.文档测试需要确保大部分示例经过测试(正确答案) 解析: 30.软件测试的对象不包括(分数:1.00) A.软件代码 B.软件文档 C.质量保证方法(正确答案) D.相关数据 解析: 31.测试用例的三要素不包括(分数:1.00) A.输入 B.预期输出 C.执行条件 D.实际输出(正确答案) 解析: 32.以下关于软件测试原则的叙述中,正确的是 ①测试开始得越早,越有利于发现缺陷 ②测试覆盖率和测试用例擞量成正比 ③测试用列既需选用合理的输入数据,又需要选择不合理的输入数据 ④应制定测试计划并严格执行,排除随意性 ⑤采用合适的测试方法,可以做到穷举测试 ⑥程序员应尽量测试自己的程序(分数:1.00) A.①②③④⑤⑥ B.①②③④⑤ C.①②③④ D.①③④(正确答案) 解析: 33.以下关于测试时机的叙述中,正确的是 ①应该尽可能早地进行测试 ②软件中的错误暴露得越迟,则修复和改正错误所花费的代价就越高 ③应该在代码编写完成后开始测试 ④项目需求分析和设计阶段不需要测试人员参与(分数:1.00) A.①②③④ B.①②③ C.①②(正确答案) D.① 解析: 34.以下属于软件测试工具的是 ①JTest ②LoadRunner ③Visual Studio ④JBuilder(分数:1.00) A.①②③④ B.①②③ C.①②(正确答案) D.① 解析: 35.兼容性测试不包括(分数:1.00) A.软件兼容性测试 B.硬件兼容性测试 C.数据兼容性测试 D.操作人员兼容性测试(正确答案) 解析: 36.根据输出对输入的依赖关系设计测试用例的黑盒测试方法是(分数:1.00) A.等价类划分法 B.因果图法(正确答案) C.边界值分析法 D.场景法 解析: 37.以下关于边界值测试法的叙述中,不正确的是(分数:1.00) A.边界值分析法仅需考虑输入域边界,不用考虑输出域边界(正确答案) B.边界值分析法是对等价类划分方法的补充 C.错误更容易发生在输入输出边界上而不是输入输出范围的内部 D.测试数据应尽可能选取边界上的值 解析: 38.一个程序的控制流图中有6个节点,10条边,在测试用例数最少的情况下,确保程序中每个可执行语句至少执行一次所需要的测试用例数的上限是(分数:1.00) A.2 B.4 C.6(正确答案) D.8 解析: 39.对于逻辑表达式((bl&b2)||in)需要( )个测试用例才能完成条件组合覆盖。(分数:1.00) A.2 B.4(正确答案) C.6 D.8 解析: 40.测试执行过程的阶段不包括(分数:1.00) A.初测期 B.系统测试期(正确答案) C.细测期 D.回归测试期 解析: 41.以下关于回归测试的叙述中,不正确的是(分数:1.00) A.回归测试是为了确保改动不会带来不可预料的后果或错误(正确答案) B.回归测试需要针对修改过的软件成分进行测试 C.回归测试需要能够溅试软件的所有功髓的代表性测试用例 D.回归测试不容易实现自动化 解析: 42.以下属于测试停止依据的是 ①测试用例全部执行结束 ②测试覆盖率达到要求 ③测试超出了预定时间 ④查出了预定数目的故障 ⑤执行了预定的测试方案 ⑥测试时间不足(分数:1.00) A.①②③④⑤⑥ B.①②③④⑤(正确答案) C.①②③④ D.①②③ 解析: 43.以下关于测试方法的叙述中,不正确的是(分数:1.00) A.根据被测代码是否可见分为白盒测试和黑盒测试 B.黑盒测试一般用来确认软件功能的正确性和可操作性 C.静态测试主要是对软件的编程格式M结构等方面进行评估 D.动态测试不需要实际执行程序(正确答案) 解析: 44.以下关于性能测试的叙述中,不正确的是(分数:1.00) A.性能测试舱慑煦是为了验证软件系统是否能够达到用户提出的性能指标 B.性能测试不用于发现软件系统中存在的性能瓶颈(正确答案) C.性能测试类型包括负载测试;强度测试容量测试等 D.性能测试常通过工具来模拟大量用户操作,增加系统负载 解析: 45.不同加密机制或算法的用途、强度是不相同的,一个软件或系统中的加密机制使用是否合理,疆度是否满足当前要求,需要通过测试来完减,通常( )是测试的一个重要手段。(分数:1.00) A.模拟加密 B.模拟解密(正确答案) C.漏洞扫描 D.算法强度理论分析 解析: 46.安全日志是软件产品的一种被动防范措施,是系统重要的安全功能,因此安全日志测试是软件系统安全性测试的重要内容,下列不属于安全日志测试基本测试内容的是(分数:1.00) A.对安全日志的完整性进行测试,测试安全日志中是否记录包括用户登录名称、时间、地址、擞据操作行为以及退出时间等全部内容 B.对安全日志的正确性进行测试,测试安全日志中记录的用户登录、数据操作等日志信息是否正确 C.对旧志信息的保密性进行测试:测试安全日志中的曰志信息是否加密存储,加密强度是否充分(正确答案) D.对于大型应用软件系统;测试系统是否提供安全日志的统计分析能力 解析: 47.下到关于DoS攻击的描述中,错误的是(分数:1.00) A.DoS攻击通常通过抑制所有或流向某一特定目的端的消息,从而使系统某一实体不能执行其正常功能,产生服务拒绝 B.DoS攻击不需入且示系统,仅从外部就可实现攻击 C.只要软件系统内部没有漏洞,DoS攻击就不可能成功(正确答案) D.死亡之Ping.Land攻击、UDP洪水、Smurf攻击均是常见的DoS攻击手段 解析: Software entities are more complex for their size than perhaps any other human construct,because no two parts are alike(at least above the statement level).If they are,we make the two similar parts into one,a(71),open or closed hi this respect software systems differ profoundly from computers,buildings,or automobiles,where repeated elements abound. Digital computers are themselves more complex than most things people build;they have very large numbers of states This makes conceiving,describing,and testing them hard. Software system s have orders of magnitude more(72)than computers do. Likewise,a scaling-up of a software entity is not merely a repetition of the same elements in larger size;it is necessarily an increase in the number of different elements.In most cases,the elements interact with each other in some(73)fashion,and the complexity of the whole increases much more than linearly. The complexity of software is a(an)(74)property,not an accidental one.Hence deions of a software entity that abstract away its complexity often abstract away its essence.Mathematics and the physical sciences made great strides for three centuries by constructing simplified models of complex phenomena,deriving,properties from the models,and verifying those properties experimentally.This worked because the complexities(75)in the models were not the essential properties of the phenomena.It does not work when the Complexities are the essence. Many of the classical problems of developing software products derive from this essential complexity and its nonlinear increases with size.Not only technical problems but management problems as well come from the complexity.(分数:5) (1).(分数:1) A.task B.job C.subroutine(正确答案) D.program 解析: (2).(分数:1) A.states(正确答案) B.parts C.conditions D.expressions 解析: (3).(分数:1) A.linear B.nonlinear(正确答案) C.parallel D.additive 解析: (4).(分数:1) A.surface B.outside C.exterior D.essential(正确答案) 解析: (5).(分数:1) A.fixed B.included C.ignored(正确答案) D.stabilized 解析: 2017年下半年软件测评师考试软件工程与软件测试基础知识真题 (总分:75.00,做题时间:150分钟) 一、单项选择题 (总题数:60,分数:75.00) 1.在Excel中,设单元格F1的值为38,若在单元格F2中输入公式“=IF(and(38 B.输入错误(正确答案) C.TRUE D.FALSE 解析: 2.采用IE浏览器访间清华大学校园网主页时,正确的地址格式为(分数:1.00) A.Smtp://www.tsinghua.edu.cn B.http://www.tsinghua.edu.cn(正确答案) C.Smtp:\\\\www.tsinghua.edu.cn D.http:\\\\www.tsinghua.edu.cn 解析: 3.CPU中设置了多个寄存器,其中,( )用于保存待执行指令的地址。(分数:1.00) A.通用寄存器 B.程序计数器(正确答案) C.指令寄存器 D.地址寄存器 解析: 4.在计算机系统中常用的输入/输出控制方式有无条件传送、中断、程序查询和DMA等。其中,采用( )方式时,不需要CPU控制数据的传输过程。(分数:1.00) A.中断 B.程序查询 C.DMA(正确答案) D.无条件传送 解析: 5.CPU 是一块超大规模的集成电路,其中主要部件有(分数:1.00) A.运算器、控制器和系统总线 B.运算器、寄存器和内存储器 C.控制器、存储器和寄存器组(正确答案) D.运算器、寄存器和寄存器组 解析: 6.对计算机评价的主要性能指标有时钟频率、( )、运算精度、内存容量等。(分数:1.00) A.丢包率 B.端口吞吐量 C.可移植性 D.数据处理速率(正确答案) 解析: 7.在字长为16 位、32 位、 位或128 位的计算机中,字长为( )位的计算机数据运算精 度最高。(分数:1.00) A.16 B.32 C. D.128(正确答案) 解析: 8.以下关于防火墙功能特性的说法中,错误的是(分数:1.00) A.控制进出网络的数据包和数据流向 B.提供流量信息的日志和审计 C.隐藏内部 IP 以及网络结构细节 D.提供漏洞扫描功能(正确答案) 解析: 9.计算机软件著作权的保护对象是指(分数:1.00) A.软件开发思想与设计方案 B.计算机程序及其文档 C.计算机程序及算法 D.软件著作权权利人(正确答案) 解析: 10.某软件公司项目组的程序员在程序编写完成后均按公司规定撰写文档,井上交 公司存档。此情形下,该软件文档著作权应由( )享有。(分数:1.00) A.程序员 B.公司与项目组共同 C.公司(正确答案) D.项目组全体人员 解析: 11.将二进制序列1011011 表示为十六进制,为(分数:1.00) A.B3 B.5B(正确答案) C.BB D.3B 解析: 12.采用模2除法进行校验码计算的是(分数:1.00) A.CRC 码(正确答案) B.ASCn 码 C.BCD 码 D.海明码 解析: 13.当一个双处理器的计算机系统中同时存在 3 个并发进程时,同一时刻允许占用 处理器的进程数(分数:1.00) A.至少为2 个 B.最多为2 个(正确答案) C.至少为 3 个 D.最多为 3 个 解析: 14.假设系统有n(n≧5)个并发进程共享资源R,且资源R的可用数为2。若采用PV操作,则相应的信号量S的取值范围为(分数:1.00) A.-1~n-1 B.-5~2 C.-(n-1)~1 D.-(n-2)~2(正确答案) 解析: 15.编译和解释是实现高级程序设计语言的两种方式,其区别主要在于(分数:1.00) A.是否进行语法分析 B.是否生成中间代码文件 C.是否进行语义分析 D.是否生成目标程序文件(正确答案) 解析: 16.下图所示的非确定有限自动机(so为初态,S3为终态)可识别字符串 (分数:1.00) A.bbaa B.aabb(正确答案) C.abab D.baba 解析: 17.表示"以字符a开头且仅由字符a、b构成的所有字符串"的正规式为(分数:1.00) A.a*b* B.(a|b)*a C.a(a|b)*(正确答案) D.(ab)* 解析: 18.在单入口单出口的do…while循环结构中(分数:1.00) A.循环体的执行次数等于循环条件的判断次数(正确答案) B.循环体的执行次数多于循环条件的判断次数 C.循环体的执行次数少于循环条件的判断次数 D.循环体的执行次数与循环条件的判断次数无关 解析: 19.将源程序中多处使用的同一个常数定义为常量并命名(分数:1.00) A.提高了编译效率 B.缩短了源程序代码长度 C.提高了源程序的可维护性(正确答案) D.提高了程序的运行效率 解析: 20.函数main( ),f( )的定义如下所示。调用函数f( )时,第一个参数采用传值(call byvalue)方式,第二个参数采用传引用(callbyreference)方式,main( )执行后输出的值为 (分数:1.00) A.2 B.4 C.5 D.8(正确答案) 解析: f(int x, int&a)函数中,x=2*2+1=5; a=5+3=8,且a是引用,对应main()函数中x,所以x的值为8。 21.对于初始为空的栈S,入栈序列为a、b、c、d,且每个元素进栈、出栈各1次。若出栈序列的第一个元素为d,则合法的出栈序列为(分数:1.00) A.d c b a(正确答案) B.d a b c C.d c a b D.d b c a 解析: 对于下面的有向图,其邻接矩阵是一个(22)的矩阵。采用邻接链表存储时,顶点0的表结点个数为2,顶点3的表结点个数为0,顶点1的表结点个数为(23)。 (分数:2) (1).(分数:1) A.3*4 B.4*3 C.6*6 D.7*7(正确答案) 解析: (2).(分数:1) A.0 B.1 C.2(正确答案) D.3 解析: 22.行为型设计模式描述类或对象如何交互和如何分配职责。( )模式是行为型设计模式。(分数:1.00) A.装饰器(Decorator) B.构建器(Builder) C.组合(Composite) D.解释器(Interpreter)(正确答案) 解析: 在结构化分析方法中,用于行为建模的模型是(25),其要素包括(26)。(分数:2) (1).(分数:1) A.数据流图(正确答案) B.实体联系图 C.状态·迁移图 D.用例图 解析: (2).(分数:1) A.加工(正确答案) B.实体 C.状态 D.用例 解析: 23.有两个N*N的矩阵A和B,想要在微机(PC机)上按矩阵乘法基本算法编程实现计算A*B。假设N较大,本机内存也足够大,可以存下A、B和结果矩阵。那么,为了加快计算速度,A和B在内存中的存储方式应选择(分数:1.00) A.A按行存储, B按行存储 B.A 按行存储, B 按列存储(正确答案) C.A 按列存储, B 按行存储 D.A 按列存储, B 按列存储 解析: 矩阵相乘最重要的方法是一般矩阵乘积。它只有在第一个矩阵的列数(column)和第二个矩阵的行数(row)相同时才有意义。当矩阵A的列数等于矩阵B的行数时,A与B可以相乘。乘积C的第m行第n列的元素等于矩阵A的第m行的元素与矩阵B的第n列对应元素乘积之和。 某企业职工关系EMP(E_no,E_name,DEPT,E_addr,E_tel中的属性分别表示职工号、姓名、部门、地址和电话;经费关系FUNDS(E_no,E_limit,E_used) 中的属性分别表示职工号、总经费金额和己花费金额。若要查询部门为"开发部"且职工号 为"03015 "的职工姓名及其经费余额,则相应的SQL语句应为: SELECT(28) FROM(29) WHERE(30)(分数:3) (1).(分数:1) A.EMP.E_no, E_limit-E_used B.EMP.E_name, E_used-E_1imit C.EMP.E_no, E_used-E_limit D.EMP.E_name, E_limit-E_used(正确答案) 解析: (2).(分数:1) A.EMP B.FUNDS C.EMP, FUNDS D.IN[EMP, FUNDS](正确答案) 解析: (3).(分数:1) A.DEPT=’开发部’, AND EMP.E no=FUNDS.E_no OR EMP.E_no='03015' B.DEPT=’开发部’, OR EMP.E_no=FUNDS.E_no OR EMP.E_no='03015'(正确答案) C.DEPT=’开发部’ AND EMP.E_no=FUNDS.E_no AND EMP.E_no='03015' D.DEPT=’开发部’ OR EMP.E_no=FUNDS.E_no AND EMP.E_no='03015' 解析: 24.以下关于瀑布模型的优点的叙述中,不正确的是(分数:1.00) A.可规范化开发人员的开发过程 B.严格地规定了每个阶段必须提交的文档 C.要求每个阶段提交的所有制品必须是经过评审和验证的 D.项目失败的风险较低(正确答案) 解析: 25.现要开发一个软件产品的图形用户界面,则最适宜采用( )过程模型。(分数:1.00) A.瀑布 B.原型化(正确答案) C.增量 D.螺旋 解析: 某软件项目的活动图如下图所示,其中顶点表示项目里程碑,连接顶点的边表示包含的活动,边上的数字表示活动的持续时间(天)。活动 EH最多可以晚开始(33)天而不影响项目的进度。由于某种原因,现在需要同一个工作人员完成BC和BD,则 完成该项目的最少时间为(34)天。 (分数:2) (1).(分数:1) A.0 B.1 C.2(正确答案) D.3 解析: (2).(分数:1) A.11 B.18 C.20(正确答案) D.21 解析: 26.关于风险的叙述中,不正确的是(分数:1.00) A.风险是可能会发生的事 B.风险会给项目带来损失 C.只要能预测到,风险就能避免(正确答案) D.可以对风险进行干预,以期减少损失 解析: 对某商店业务处理系统采用数据流图(DFD)进行功能建模,其中“检查订货单”是其中一个(36)。由于在进行订货单检查时,需要根据客户的欠款情况、订单金额等多个条件判断是否采取发出催款单、准备货物、发出发货单等行为,此时适合采用(37)进行描述。(分数:2) (1).(分数:1) A.外部实体 B.加工(正确答案) C.数据流 D.数据存储 解析: (2).(分数:1) A.流程图 B.决策树(正确答案) C.伪代码 D.程序语言代码 解析: 27.模块A将其中的学生信息,即学生姓名、学号、手机号等放到一个结构体中,传递给模块B,则A和B之前的耦合类型为( )耦合。(分数:1.00) A.数据(正确答案) B.标记 C.控制 D.内容 解析: 28.某模块内涉及多个功能,这些功能必须以特定的次序执行,则该模块的内聚类型为( )内聚。(分数:1.00) A.时间 B.过程(正确答案) C.信息 D.功能 解析: 给定包含n个正整数的数组A和正整数x,要判断数组A中是否存在两个元素之和等于x。先用插入排序算法对数组A进行排序,再用以下过程P来判断是否存在两个元素之和等于x。 low=1; high=n; While(high>low) If A[low]+A[high]=X return true; else if A[low]+A[high]>x low++; else high--; Return false; 则过程P的时间复杂度为(40),整个算法的时间复杂度为(41)。(分数:2) (1).(分数:1) A.O(n)(正确答案) B.O(nlgn) C.O(n2) D.O(n2lgn) 解析: (2).(分数:1) A.O(n) B.O(nlgn) C.O(n2)(正确答案) D.O(n2lgn) 解析: 29.高度为n的完全二叉树最少的结点数为(分数:1.00) A.2n-1 B.2n-1+1 C.2n D.2n-1(正确答案) 解析: 30.采用折半查找算法有序表{7,15,18,21,27,36,42,48,51,54,60,72}中寻找值为15和38,分别需要进行( )次元素之间的比较。(分数:1.00) A.3和1 B.3和2 C.4和1 D.4和3(正确答案) 解析: 下图是(44)设计模式的类图,该设计模式的目的是(45),图中,Abstraction和RefinedAbstraciton之间是(46)关系,均由Abstraction和Implementor之间是(47)关系。 (分数:4) (1).(分数:1) A.适配器 B.桥接(正确答案) C.装饰 D.代理 解析: (2).(分数:1) A.将一个类的接口转换为客户期望的另一种接口,使得原本不匹配的接口而无法合作的类可以一起工作 B.将一个抽象与其实现分离开,以便两者能够各自地演变(正确答案) C.动态地给一个对象附加额外的职责,不必通过子类就能灵活地增加功能 D.为一个对象提供代理以控制该对象的访问 解析: (3).(分数:1) A.依赖 B.关联 C.继承(正确答案) D.聚合 解析: (4).(分数:1) A.依赖 B.关联 C.继承 D.聚合(正确答案) 解析: 传统编译器进行词法分析、语法分析、代码生成等步骤的处理时,前一阶段处理的输出是后一阶段处理的输入,则采用的软件体系结构风格是(48)。该体系结构的优点不包括(49)。(分数:2) (1).(分数:1) A.管道过滤器(正确答案) B.分层 C.信息库 D.发布订阅 解析: (2).(分数:1) A.软件构件具有良好的高内聚,低耦合的特点 B.支持重用 C.支持并行执行(正确答案) D.提高性能 解析: 31.系统交付后,修改原来打印时总是遗漏最后一行记录的问题,该行为属于( )维护。(分数:1.00) A.改正性 B.适应性 C.完善性(正确答案) D.预防性 解析: 32.软件测试的对象不包括(分数:1.00) A.程序 B.需求规格说明书 C.数据库中的数据 D.质量改进措施(正确答案) 解析: 33.以下不属于单元测试测试内容的(分数:1.00) A.模块接口测试 B.局部数据测试 C.边界条件测试 D.系统性能测试(正确答案) 解析: 34.以下不属于文档测试测试范围的是(分数:1.00) A.软件开发计划 B.数据库脚本(正确答案) C.测试分析报告 D.用户手册 解析: 35.以下关于软件测试和软件质量保证的叙述中,不正确的是(分数:1.00) A.软件测试是软件质量保证的一个环节 B.质量保证通过预防、检查与改进来保证软件质量 C.质量保证关心的是开发过程的产物而不是活动本身(正确答案) D.测试中所作的操作是为了找出更多问题 解析: 36.以下关于软件测试原则的叙述中,正确的是 ①所有软件测试都应追溯到用户需求 ②尽旱地和不断地进行软件测试 ③完全测试是不可能的 ④测试无法发现软件潜在的缺陷 ⑤需要充分注意测试中的群集现象(分数:1.00) A.①②③④⑤(正确答案) B.②③④⑤ C.①②③⑤ D.①②④⑤ 解析: 37.按照开发阶段划分,软件测试可以分为 ①单元测试 ②集成测试 ③系统测试 ④确认测试 ⑤用户测试 ⑥验收测试 ⑦第三方测试(分数:1.00) A.①②③④⑤ B.①②③④⑥(正确答案) C.①②③④⑤⑦ D.①②③④⑥⑦ 解析: 38.以下不属于软件编码规范评测内容的是(分数:1.00) A.源程序文档化(正确答案) B.数据说明方法 C.语句结构 D.算法逻辑 解析: 39.以下关于确认测试的叙述中,不正确的是(分数:1.00) A.确认测试的任务是验证软件的功能和性能是否与用户要求一致 B.确认测试一般由开发方进行(正确答案) C.确认测试需要进行有效性测试 D.确认测试需要进行软件配置复查 解析: 40.根据输入输出等价类边界上的取值来设计用例的黑盒测试方法是(分数:1.00) A.等价类划分法 B.因果图法 C.边界值分析法(正确答案) D.场景法 解析: 41.以下关于判定表测试法的叙述中,不正确的是(分数:1.00) A.判定表由条件桩、动作桩、条件项和动作项组成 B.判定表依据软件规格说明建立 C.判定表需要合并相似规则 D.n 个条件可以得到最多 n2个规则的判定表(正确答案) 解析: 42.一个程序的控制流图中有5个节点、9条边,在测试用例数最少的情况下,确保程序中每个可执行语句至少执行一次所需测试用例数的上限是(分数:1.00) A.2 B.4 C.6(正确答案) D.8 解析: 43.对于逻辑表达式(((a>0)&&(b>0))||c<5),需要( )个测试用例才能完成条件组合覆盖。(分数:1.00) A.2 B.4 C.6(正确答案) D.8 解析: 44.以下关于黑盒测试的测试方法选择策略的叙述中,不正确的是(分数:1.00) A.首先进行等价类划分,因为这是提高测试效率最有效的方法 B.任何情况下都必须使用边界值分析,因为这种方法发现错误能力最强 C.如果程序功能说明含有输入条件组合,则一开始就需要错误推测法(正确答案) D.如果没有达到要求的覆盖准则,则应该补充一些测试用例 解析: 45.以下关于负载压力测试的叙述中,不正确的是(分数:1.00) A.在模拟环境下检测系统性能(正确答案) B.预见系统负载起力承受力 C.分析系统瓶颈 D.在应用实际部署并评估系统性能 解析: 46.以下不属于负载压力测截的测试指标是(分数:1.00) A.并发用户数 B.查询结果正确性(正确答案) C.平均事物响应时间 D.吞吐量 解析: 47.以下关于测试方法的叙述中,不正确的是(分数:1.00) A.根据是否需要执行被测试代码可分为静态测试和动态测试 B.黑盒测试也叫做结构测试,针对代码本身进行测试(正确答案) C.动态测试主要是对软件的逻辑、功能等方面进行评估 D.白黑测试把被测试代码当成透明的盒子,完全可见 解析: 48.以下关于Web测试的叙述中,不正确的是(分数:1.00) A.Web软件的测试贯穿整个软件生命周期 B.按系统架构划分,Web测试分为客户端测试、服务端测试和网络测试 C.Web系统测试与其他系统测试测试内容基本不同但测试重点相同(正确答案) D.Web性能测试可以采用工具辅助 解析: 49.以下不属于安全防护策略的是(分数:1.00) A.入侵检测 B.隔离防护 C.安全测试(正确答案) D.漏洞扫描 解析: 50.标准符合性测试中的标准分类包括 ①数据内容类标准 ②通信协议类标准 ③开发接口类标准 ④信息编码类标准(分数:1.00) A.③④ B.②④ C.②③④ D.①②③④(正确答案) 解析: 51.以下关于软件可靠性管理的叙述中,不正确的是(分数:1.00) A.在需求分析阶段确定软件的可靠性目标 B.在设计阶段进行可靠性评价(正确答案) C.在测试阶段执行可靠性测试 D.在实施阶段收集可靠性数据 解析: The development of the Semantic Web proceeds in steps,each step building a layer on top of another.The pragmatic justification for this approach is that it is easier to achieve( 71 )on small steps,whereas it is much harder to get everyone on board if too much is attempted.Usually there are several research groups moving in different directionsthis( 72 )of ideas is a major driving force for scientific progress . However,from an engineering perspective there is a need to standardize.So,if most researchers agree on certain sues and disagree on others,it makes sense to fix the points of agreement.This way,even if he more ambitious research efforts should fail,there will be at least( 73 )positive outcomes . Once a( 74 )has been established , many more groups and companies will adopt it,instead of waiting to see which of the alternative research lines will be successful in the end he nature of the semantic web is such that companies and single users must build tools,add content,and use that content.We cannot wait until the full semantic web vision materializes-it may take another ten years for it to be realized to its full( 75 ) (as envisioned today,of course)。(分数:5) (1).(分数:1) A.conflicts B.consensus(正确答案) C.success D.disagreement 解析: (2).(分数:1) A.competition(正确答案) B.agreement C.cooperation D.collaboration 解析: (3).(分数:1) A.total B.complete C.partial(正确答案) D.entire 解析: (4).(分数:1) A.technology B.standard(正确答案) C.pattern D.model 解析: (5).(分数:1) A.area B.goal C.object D.extent(正确答案) 解析: 2017年下半年软件评测师考试软件测试应用技术下午真题 (总分:95.00,做题时间:150分钟) 一、案例分析题(总题数:5,分数:95.00) 试题一 阅读下列 C 程序,回答问题,将解答填入答题纸的对应栏内。 【说明】 [C程序] Int DoString(char*string){ cbar*argv[100]; Int argc=l; while(l) { //1 while(*string&& *string!='-') //2,3 String++; //4 If(!*string) //5 break; //6 argv[argc]=string; while(*string && *string!="&& *string!='\\n'&& *string!= '\') //7,8,9,10 string++; //11 argc+; //12 } Return0; //13 }(分数:15) (1).请针对上述C程序给出满足100%DC(判定覆盖)所需的逻辑条件。(分数:3) __________________________________________________________________________________________ 正确答案:( *string && * String !=’-’ T/F !*String T/F *string && * String !=’ ’ &&*String !=’\\n’ && *String!=’\’ T/F ) 解析: (2).请画出上述程序的控制流图,并计算其控制流图的环路复杂度V(G)。(分数:8) __________________________________________________________________________________________ 正确答案:( V(g)=8 ) 解析: (3).请给出问题2中控制流图的线性无关路径。(分数:4) __________________________________________________________________________________________ 正确答案:( 1、2、5、6、13. 1、2、3、5、6、13 1、2、3、4、2、5、6、13 1、2、5、7、12、1. . . 1、2、5、7、8、12、1. . . 1、2、5、7、8、9、12、1. . . 1、2、5、7、8、9、10、12、1. . . 1、2、5、7、8、9、10、11、7、12、1. . . ) 解析: 试题二 阅读下列说明,回答问题,将解答填入答题纸的对应栏内。 【说明】 某银行 B 和某公司 C 发行联名信用卡,用户使用联名信用卡刷卡可累计积分,积分累计规则与刷卡金额和刷卡日期有关,具体积分规则如表 2-1 所示。此外,公司 C 的 会员分为普通会员、超级会员和 PASS 会员三个级剔,超级会员和 PASS 会员在刷卡时有额外积分奖励,奖励规则如表 2-2 所示。 表 2-1 积分规则 (1).采用等价类划分法对该程序进行测试,等价类表如下表所示,请补充表2-3中空(1 )~( 5) 表2-3 等价表 __________________________________________________________________________________________ 正确答案:( (1)P (2)12 月 12 日 (3)正浮点数带 2 位小数 (4)MSP 以外的字母 (5)非正浮点数 ) 解析: (2).根据以上等价类表设计的测试用例如下表所示,请补充表2-4中空(1 )~(9 )。 表 2-4测试用例 __________________________________________________________________________________________ 正确答案:( (1)1000 (2)500.25 (3)3、6、8 (4)1月8日(其他日期) (5)1(非字母) (6) N/A (7) K(MSP 以外的单个字母) (8)1、7、12 (9) 500.12345(多于 2 位的正浮点数) ) 解析: (3).如果规定了单次刷卡的积分上限为 20000( 即 S 取值大于等于 0 且小于等于 20000), 则还需要针对 S 的取值补充一些测试用例。假设采用等价类划分法和边界值分析法来补充用例,请补充表 2-5、表2-6中的空(1)~(6)。 表2-5 补充等价类 __________________________________________________________________________________________ 正确答案:( (1)S<0 (2)S>20000 (3)S=19999 (4)S=-1 (5)S=20001 (6)S=1 ) 解析: 试题三 阅读下列说明,回答问题 ,将解答填入答题纸的对应栏内。 【说明】 某公司欲开发一套基于 Web的通用共享单车系统。该系统的主要功能如下: 1.商家注册、在线支付:后台业务员进行车辆管理与监控、查询统计、报表管理、 价格设置、管理用户信息。 2.用户输入手机号并在取验证码后进行注册、点击用车后扫描并获取开锁密码、锁车(机械锁由用户点击结束用车)后 3 秒内显示计算的费用,用户确认后支付、查看显示时间与路线及其里程、预约用车、投诉。(分数:20) (1).采用性能测试工具在对系统性能测试时,用Apdex(应用性能指数)对用户使用共享单车的满意度进行量化,系统需要满足Apdex指数为0.90以上。 Apdex 量化时,对应用户满意度分为三个区间,通过响应时间数值 T 来划分 T 值 代表着用户对应用性能满意的响应时间界限或者说是"门槛" (Threshold) 。 针对用户请求的响应时间,Apdex 的用户满意度区间如下 : 满意: (0,T]让用户感到很愉快 容忍:(T, 4T] 慢了一点,但还可以接受,继续这一应用过程 失望: >4T,太慢了,受不了了,用户决定放弃这个应用 Apdex的计算如下: Apdex= (小于 τ 的样本数+T~4T 的样本数/2) /.总样本数 针对用户功能,本系统设定 T=2 秒,记录响应时间,统计样本数量。 2 秒以下记录数300,2~8秒记录数1000,大于8秒500。 请计算本系统的Apdex指数,并说明本系统是否达到要求。(分数:6) __________________________________________________________________________________________ 正确答案:( 未达到要求。 因为Apdex=(3000+1000/2)/(3000+1000+500)=3500/4500 = 0.78<0.90,所以未达到要求。 ) 解析: (2).系统前端采用HTML5实现,已使用户可以通过不同的移动设备的浏览器进行访问。设计兼用行测试矩阵,对系统浏览器兼容性进行测试。(分数:6) __________________________________________________________________________________________ 正确答案:( 解析: (3).针对用户手机号码获取验证码进行注册的功能,设计4个测试用例。(假设合法手机号码为11位数字,验证码为4位数字)(分数:8) __________________________________________________________________________________________ 正确答案:( 用例1: 11位数字的手机号码,得到4位数字验证码 用例2:小于11位数字的手机号码,无验证码 用例3:大于11位数字的手机号码,无验证码 用例4:11位有非数字的手机号码,无验证码 ) 解析: 试题四 阅读下列说明,回答问题 ,将解答填入答题纸的对应栏内。 【说明】 图4-1 是某企业信息系统的一个类图,图中属性和方法前的"+"、"#"和"- " 分别表示公有成员、保护成员和私有成员。其中: 图 4-1 类图(分数:15) (1).图4-1 所示的类图中,类陆nager 和类 E吨,loy,臼之间是什么关系?该关系对测试的影响是什么?(分数:5) __________________________________________________________________________________________ 正确答案:( 泛化关系。 继承的成员函数是否需要测试, 对父类的测试能否搬到子类上。 ) 解析: (2).(1)类Manager重新实现了类 Employe的方法calSalary( ),这是面向对象的什么机制?是否需要重新测试该方法? (2)类Manager中的方法querySa1ary( )继承了其父类 Employee 的方法querySalary( ),是否需要重新测试该方法?(分数:4) __________________________________________________________________________________________ 正确答案:( (1) 继承。 需要重新测试, 在子类中重新进行了定义, 需要重新测试。 (2) 不需要重新测试 ) 解析: (3).(1)请结合题干说明中的描述,给出测试类Employee 方法calSalary( )时的测试序列。 (2) 请给出类图4- 1 中各个类的测试顺序。(分数:4) __________________________________________________________________________________________ 正确答案:( 先测试 Employee 类, 再测试 Manager 类中的 calSalary 函数; 先测试 Employee 类, 再 Department 类, 最后测试 Manager 类; ) 解析: (4).从面向对象多态特性考虑,测试方法statSalary( )时应注意什么?(分数:2) __________________________________________________________________________________________ 正确答案:( 只需要在原有的测试分析基础上增加对测试用例中输入数据的类型的考虑。 ) 解析: 试题五 阅读下列说明,回答问题 , 将解答填入答题纸的对应栏内。 【说明】 某飞行器供油阀控制软件通过控制左右两边的油箱BL、BR 向左右发动机 EL、ER 供油,既要保证飞行器的安全飞行,又要保证飞行器的平衡,该软件主要完成的功能如下: (1)无故障情况下,控制左油箱 BL 向左发动机 EL 供油,右油箱供油,不上报故障; (2)当左油箱 BL 故障时,控制右油箱BR分别向左、右发动机EL 和 ER 供油,并上报二级故障一一左油箱故障; (3)当右油箱 BR故障时,控制左油箱BL 分别向左、右发动机EL和 ER供油,并上报二级故障——右油箱故障; (4)当左发动机 EL 故障时,根据左右油箱的剩油量决定(如果左右油箱剩油量之差大于等于 50 升,则使用剩油量多的油箱供泊,否则同侧优先供油)左油箱BL 还是右油箱 BR 向右发动机 ER 供油,并上报一级故障——左发动机故障; (5)当右发动机ER故障时,根据左右油箱的剩油量决定(如果左右油箱剩油量之差大于等于 50 升,则使用剩油量多的油箱供油,否则同侧优先供油)左油箱且还是右油箱 BR 向左发动机EL供油,井上报一级故障一一右发动机故障; (6)当一个油箱和一个发动机同时故障时,则无故障的油箱为无故障发动机供油, 并上报一级故障一一故障油箱和发动机所处位置; (7)当两个油箱或两个发动机同时故障或存在更多故障时,则应进行双发断油控制, 并上报特级故障一一两侧油箱或两侧发动机故障; (8)故障级别从低级到高级依次为二级故障、一级故障和特级故障,如果低级故障 和高级故障同时发生,则只上报较高级别故障。(分数:30) (1).覆盖率是度量拥试完整姓的一个手段,也是度量测试有效性的一个手段。在嵌入式软件白盒测试过程中,通常以语句覆盖率、条件覆盖率和 MC/DC 覆盖率作为度量指标。 在实现第 6 条功能时,设计人员采用了下列算法: 请指出对上述算法达到 100%语句覆盖、 100%条件覆盖和 100%MC/DC 覆盖所需的 最少测试用例数目,填写表 5-1 中的空(1)~(3)。 表5-1 测试覆盖用例统计表 __________________________________________________________________________________________ 正确答案:( 100%语句覆盖(每个 if 语句执行到, TTTT 即可) 1 100%条件覆盖(每个 if 语句真假分支执行到, TTTT 和 FFFF 即可) 2 100%MC/DC 覆盖 条件组合的覆盖 2^4 = 16 ) 解析: (2). 为了测试此软件功能,测试人员设计了表5-2所示的测试用例,请填写该表中的空(1)~(12)。 (分数:12) __________________________________________________________________________________________ 正确答案:( (1)BR (2)BL (3)BR (4)BL (5)100 (6)90 (7)断油 (8)BR (9)BL (10)BR (11)故障 (12)特级故障 ) 解析: (3).常见的黑盒测试的测试用例设计方法包括等价类划分、决策表、因果图、边界值分析等。测试人员在针对本题设计测试时,使用哪种测试用例设计方法最恰当?(分数:12) __________________________________________________________________________________________ 正确答案:( 决策表 ) 解析: 2018年下半年软件评测师考试软件测试应用技术下午真题 (总分:95.00,做题时间:150分钟) 一、案例分析题(总题数:5,分数:95.00) 试题一 阅读下列C程序,回答问题,将解答填入答题纸的对应栏内。 【说明】 (分数:15) (1).请针对上述C程序给出满足100%DC(判定覆盖)所需的逻辑条件。(分数:3) __________________________________________________________________________________________ 正确答案:( 判定覆盖法:设计足够的测试用例,使得被测程序中每个判定表达式至少获得一 次“真”值和“假”值,从而使程序的每一个分支至少都通过一次。 本题目有3个判定,所以满足判定覆盖一共需要6个逻辑条件。如下所示: 1、i 2、i>= ncycle; 3、j 4、j>=cyclelen; 5、pos>=panonopt_en; 6、pos ) 解析: (2).请画出上述程序的控制流图,并计算其控制流图的环路复杂度V(G)。(分数:8) __________________________________________________________________________________________ 正确答案:( 控制流图:描述程序控制流的一种图示方式,由节点和定向边构成。节点代表一个基本块,定向边代表控制流的方向。如图所示: 环路复杂度等于控制流图中判定节点的个数加1,本题目中控制流图的判定节点是3,所以环路复杂度V(G)=3+1=4。 ) 解析: (3).请给出问题2中控制流图的线性无关路径。(分数:4) __________________________________________________________________________________________ 正确答案:( 线性无关路径:指包含一组以前没有处理的语句或条件的路径。从控制流图上来看, 一条线性无关路径是至少包含在其他中线性无关路径中从未有过的边的路径。 程序的环路复杂度等于线性无关路径的条数 ,所以本题中有4条线性无关路径。 如下所示: (1)1、2、8 (2)1、2、3、4、2… (3)1、2、3、4、5、6、4… (4)1、2、3、4、5、7、4… ) 解析: 试题二 阅读下列说明,回答问题,将解答填入答题纸的对应栏内。 【说明】 某连锁酒店集团实行积分奖励计划,会员每次入住集团旗下酒店均可以获得一定积分,积分由欢迎积分加消费积分构成。其中欢迎积分跟酒店等级有关,具体标准如表2-1所示;消费积分跟每次入住消费金额有关,具体标准为每消费1元获得2积分(不足1元的部分不给分)。此外,集团会员分为优先会员、金会员、白金会员三个级别,金会员和白金会员在入住酒店时可获得消费积分的额外奖励,奖励规则如表2-2所示。 表2-1 集团不同等级酒店的欢迎积分标准 (1).采用等价类划分法对该程序进行测试,等价类表如表2-3所示,请补充表2-3中空(1)-(7)。 表2-3 等价类 __________________________________________________________________________________________ 正确答案:( (1)P (2)1 (3)4、5 (4)最多带2位小数的正浮点数 (5)MGP以外的单个字母 (6)小于1的整数 (7)最多两位小数的负浮点数 ) 解析: 等价类划分法:把程序的输入域划分成若干部分(子集),然后从每个部分中选取少数代表性数据作为测试用例。每一类的代表性数据在测试中作用等价于这一类中的其他值。 (2).根据以上等价类表设计的测试用例如下表所示,请补充表2-4中空(1)-(13)。 表2-4 测试用例 __________________________________________________________________________________________ 正确答案:( (1)300 (2)100 (3)3,6,8 (4)6 (5)2(非字母) (6)EF(非单个字母) (7)N/A (8)2.2(非整数) (9)1,13 ,8 (10 )8(大于6的整数) (11 )a(非浮点数) (12 )-2.11 (最多带两位小数的负浮点数) (13 )9.851 (超过两位小数的正浮点数) ) 解析: 试题三 阅读下列说明,回答问题,将解答填入答题纸的对应栏内。 【说明】 某公司欲开发一套基于Web的房屋中介系统,以有效管理房源和客户,提升成交效率。该系统的主要功能是: (1)房源管理。员工或客户对客户拟出售/出租的意向房进行登记和管理。 (2)客户管理。员工对客户信息进行管理,支持客户交互。 (3)房源推荐。根据客户的需求和房源情况,进行房源推荐。 (4)交易管理。对租售客户双方进行交易管理,收取中介费,更改客户状态。(分数:20) (1).系统前端采用HTML5实现,以使用户可以通过电脑和不同移动设备的浏览器进行访问。请设计兼容性测试矩阵,对系统浏览器兼容性进行测试。(分数:6) __________________________________________________________________________________________ 正确答案:( 本小题考查兼容性测试用例矩阵的简单应,要求对电脑和不同移动设备的浏览器进行兼容性测试,其兼容矩阵设计。 解析: (2).客户交易时,前端采用表单提交价格(正整数,单位:元)和中介费比例(0到1之间的小数,保留小数点后2位),针对这一功能设计4个测试用例。(分数:8) __________________________________________________________________________________________ 正确答案:( 1、对于价格应该出现正整数、负整数和非整数; 2、对中介比例应该出现两位小数,0~1之间的小数,不在0~1之间的小数,非小数; (1)100,0.22 (正整数,0~1之间的小数) (2)100.11,0.22(非整数,0~1之间的小数) (3)-100,0.22(负整数,0~1之间的小数) (4)100,2.22(正整数,不在0~1之间的小数) ) 解析: 本小题考查测试用例设计的简单应用,题干要求对价格(整数)和中介比例(0到1之间的小数,保留2位小数)的测试用例。 (3).采用性能测试工具在对系统性能测试时,采用Apdex(应用性能指数)对用户使用该系统的性能满意度进行度量,系统需要满足的Apdex指数为0.85以上。 Apdex量化时,对应的用户满意度分为三个区间,通过响应时间阈值(Threshold)T来划分,Apdex的用户满意度区间如下: 满意:(0,T],让用户感到很愉快 容忍: (T,4T],慢了一点,但还可以接受,继续这一应用过程 失望:高于4T,太慢了,受不了,用户决定放弃这个应用 Apdex的计算入如下: Apdex= (满意的样本数+容忍的样本数/2) /总样本数 针对用户功能,本系统设定T=2秒,记录响应时间,统计样本数量,2秒以下记录数4000,2~8秒记录数1000,大于8秒500。 请计算本系统的Apdex指数,并说明本系统是否到达要求。(分数:6) __________________________________________________________________________________________ 正确答案:( 未达到要求:因为Apdex=(4000+1000/2)/(4000+1000+500)=0.82<0.85 (系统要求) ) 解析: 试题四 阅读下列说明,回答问题,将解答写在答题纸的对应栏内。 【说明】 某软件的积分计算模块每天定时根据用户发布的文章数、文章阅读数来统计用户所获取的积分,用户分为普通用户和专家用户,两类用户具有不同的积分系数。 图4-1是该模块的类图,图中属性和操作前的“+”、“#”和“-”分别表示公有成员、保护成员和私有成员。 图4-1类图 其中: (1)类Expert重新实现了类User的方法calPoints__(4)__; (2)方法calPoints__(5)__根据每个用户每天的文章数(articleNum)、文章阅读数(readNum)来计算当天的积分; (3)类System中的方法statPoints__(6)__中首先调用了该类的方法load__(7)__,获取本系统用户列表,然后调用了类User中的方法calPoints__(8)__。 现拟采用面向对象的方法进行测试。(分数:20) (1).(1)图4-1所示的类图中,类System和User之间是什么关系? (2)类Expert重新实现了类User的方法calPoints(),这是面向对象的什么机制?(分数:4) __________________________________________________________________________________________ 正确答案:( (1)题考察类图的关联关系,表示类与类之间的连接,它使得一个类知道另外一个类的属性和方法。关联可以使用单箭头表示单向关联,使用双箭头或者不使用箭头表示双向关联。 (2)题考察面向对象里继承特性的知,继承是指在一个类基础上定义一个新类 ,原有的类叫做父类,新生成的类叫子类,继承过程是一个从一般到特殊的过程。 继承的特点: 1、子类拥有父类的属性和方法; 2、子类可以有自己新的属性和方法; 3、子类可以重写父类的方法; 4、可以声明父类,创建子类。 (1)、关联关系 (2)、继承机制 ) 解析: (2).类Expert中的方法calPoints()和getPoints()是否需要重新测试?(分数:6) __________________________________________________________________________________________ 正确答案:( 对父类中已经测试过的成员函数,有两种情况需要在子类中重新测试: (1)继承的成员函数在子类中做了改动; (2)成员函数调用了改动过的成员函数部分; 本题中Expert的calPoints()重新修改了需要重新测试,而getPoints()没有变化,无须重新测试。 calPoints()需要重新测试; getPoints ()无须重新测试。 ) 解析: (3).(1)请结合题干说明中的描述,给出测试类User方法calPoints()时的测试序列。 (2)从面向对象多态特性考虑,测试类System中方法statPoints()时应注意什么? (3)请给出图4-1中各个类的测试顺序。(分数:10) __________________________________________________________________________________________ 正确答案:( (1)、先测试User类,再测试 Expert 类的 calPoints () 函数; (2)、只需要在原有的测试分析和基础上增加对测试用例中输入数据的类型考虑;先测试基类,然后再分别依据输入数据设计不同的测试用例。 (3)、先测试User类,然后System类,最后测试Expert类。 ) 解析: 试题五 阅读下列说明,回答问题,将解答填入答题纸的对应栏内。 【说明】 某智能家居系统软件设计中,家庭内网节点软件设计包括协调器软件、现场采集/执行器(室内温湿度采集节点、模拟台灯控制节点、模拟雨水窗户监控节点、模拟空制节点和火灾监测节点)的软件设计。软件功能组成如图5-1所示。 图5-1 软件功能组成图 整个系统中,协调器是整个家庭内网的核心和起点,负责管理各个节点设备与PC网关的信息和控制指令的传输。温湿度采集终端将传感器的数据以点播的形式发送给协调器,其他采集/控制节点以广播的形式与协调器进行数据的交换,协调器和PC机采用串口通信协议。协调器软件主要完成以下功能: (1)创建信道,组建网络;如果失败,则继续创建; (2)组建网络成功,则进行各层事件扫描; (3)如果检测到应用层有事件,则转第(4)步,否则反复扫描各层事件; (4)判断数据类型,如果是室内环境数据,则经串口发送到网关;如果是控制指令,则向控制节点发送控制指令;如果前面两者均不是,则不处理; (5)继续扫描各层事件。(分数:20) (1).在本软件开发过程中,开发人员使用了基于模型的嵌入式代码生成技术,目前对模型验证最主要的方法是(1)。通过此方法验证后,利用此验证结果可对模型的覆盖率进行分析,模型的覆盖率类型一般包括(2)(至少写出两种类型)。 (1)备选项: A.评审B.分析C.仿真D.测试(分数:4) __________________________________________________________________________________________ 正确答案:( (1)B (2)条件覆盖、判定覆盖、MC/DC ) 解析: (2).为了测试此软件功能,测试人员设计了表5-1所示的测试用例,请填写该表中的空(1) ~ (5)。 表5-1 测试用例 __________________________________________________________________________________________ 正确答案:( (1)各层事件扫描 (2)室内环境数据 (3)模拟雨水窗户监控节点发送制指令 (4)台灯 (5)空制指令 ) 解析: (3).覆盖率是度量测试完整性和测试有效性的一个指标。在嵌入式软件白盒测试过程中,通常以语句覆盖率、条件覆盖率和MC/DC覆盖率作为度量指标。 在实现第4条功能时,设计人员采用了下列算法: if (( 数据有效==TRUE) && (数据类型==室内环境数据)) { 数据经串口发送到网关; } if ((数据有效==TRUE) && ( 数据类型==控制指令)) { 向控制节点发送控制指令; } 请指出对上述算法达到100%语句覆盖、100%条件覆盖和100%MC/DC覆盖所需的最少测试用例数目,并填写在表5-2的空(1) ~ (3)中。 表5-2 测试覆盖用例统计表 __________________________________________________________________________________________ 正确答案:( (1)2 (2)2 (3)3 ) 解析: 2019年下半年软件评测师考试软件测试应用技术下午真题 (总分:95.00,做题时间:150分钟) 一、案例分析题(总题数:5,分数:95.00) 阅读下列C程序,回答下列问题。 (分数:20) (1).请针对上述C程序给出满足100%DC (判定覆盖)所需的逻辑条件。(分数:6) __________________________________________________________________________________________ 正确答案:( buf_c[i]<7||buf_c[i]>14;i>=32; buf_len>512;buf_len<=512 buf_len==0;buf_len!=0 i=total_bytes buf_c[i]==’\\0’; buf_c[i]!=’\\0’ buf_c[i]<7||buf_c[i]>14;buf_c[i]>=7&&buf_c[i]<=14 i>=32;i<32 判定覆盖:设计足够的测试用例,使得使程序中的每个判定至少都获得一次“真值”或“假值”。又称分支覆盖:使程序中的每一个取“真”分支和取“假”分支至少经历一次。 ) 解析: 本题中涉及到判定的点的条件项分别为:buf_len>512;buf_len==0;i14;i>=32; buf_len>512;buf_len<=512 buf_len==0;buf_len!=0 i=total_bytes buf_c[i]==’\\0’; buf_c[i]!=’\\0’ buf_c[i]<7||buf_c[i]>14;buf_c[i]>=7&&buf_c[i]<=14 i>=32;i<32 (2).请画出上述程序的控制流图,并计算其控制流图的环路复杂度v(G)。(分数:6) __________________________________________________________________________________________ 正确答案:( v(G)=8 ) 解析: 控制流图是描述程序控制流的一种图示方法。其基本符号有圆圈和箭线:圆圈为控制流图中的一个结点,表示一个或多个无分支的语句;带箭头的线段称为边或连接,表示控制流。基本结构如下所示: 本题由于在//8 //12后都存在break语句,导致执行//8 //12后程序结构会发生改变。 控制流程图的环路复杂性 V(G)等于: (1)控制流程图中的区域个数。 (2)边数-结点数+2。 (3)判定数+1。 v(G)=8 (3).请给出问题2中控制流图的线性无关路径。(分数:8) __________________________________________________________________________________________ 正确答案:( 1)1、2、4、5、13 2)1、3、4、5、13 3)1、3、4、6、13 (1、2、4、6、13) 4)1、3、4、6、7、8、13 (1、2、4、6、7、8、13) 5)1、3、4、6、7、9、11、12、13 (1、2、4、6、7、9、11、12、13) 6)1、3、4、6、7、9、10、11、12、13 (1、2、4、6、7、9、10、11、12、13) 7)1、3、4、6、7、9、10、6… (1、2、4、6、7、9、10、6…) 8)1、3、4、6、7、9、10、11、6… (1、2、4、6、7、9、10、11、6…) ) 解析: 线性无关路径是指包括一组以前没有处理的语句或条件的一条路径。从控制流图来看,一条线性无关路径是至少包含有一条在其他线性无关路径中从未有过的边的路径: 本题由于主干有分支,所以线性无关路径可能有多种组合。 阅读下列说明,回答下列问题。 【说明】 某航空公司进行促销活动,会员在指定日期范围内搭乘航班将获得定奖励,奖励分为4个档次,由乘机次数和点数共同决定,如表2-1所示。其中点数果票面价格和购票渠道有关,规则如表2-2所示。 表2-1促销奖励 (1).采用等价类划分法对该程序进行测试(同时对输入输出进行等价类划分), 等价类表如表2-3所示,请补充表2-3中的空(1) ~ (4)。 表2-3等价类 购票金额B __________________________________________________________________________________________ 正确答案:( (1)非负整数 (2)4 (3)0 (4)负整数 ) 解析: 划分等价类的6条原则: (1)在输入条件规定了取值范围或值的个数的情况下,可以确立一个有效等价类和两个无效等价类; (2)在输入条件规定了输入值的集合或者规定了“必须如何”的条件的情况下,可以确立一个有效等价类和一个无效等价类; (3)在输入条件是一个布尔量的情况下,可确定一个有效等价类和一个无效等价类; (4)在规定了输入数据的一组值(假定n个),并且程序要对每一个输入值分别处理的情况下,可确立n个有效等价类和一个无效等价类; (5)在规定了输入数据必须遵守的规则的情况下,可确立一个有效等价类(符合规则)和若干个无效等价类(从不同角度违反规则); (6)在确知已划分的等价类中,各元素在程序处理中的方式不同的情况下,则再将该等价类进一步地划分为更小的等价类; 题干中明确:C、A、B为非负整数,结合乘机次数的无效等价了,A、B的有效等价类(1)处应该填写非负整数; 题干中明确:C、A、B为非负整数,L为0~5之间的整数(结合题干分析,应该是0~4之间整数),而且每一种是单独处理的,再结合问题【2】的测试用例表的测试编号1和4,所以,(2)(3)应该填写4、0; 题干中明确:C、A、B为非负整数,结合前面两个无效等价,(4)处应该填写负整数。 (2).根据以上等价类表设计的测试用例如表2-4 所示,请补充表24中的空(1)~(9)。 表2-4测试用例 __________________________________________________________________________________________ 正确答案:( (1)1、2、3、8 (2)0 (3)20(大于等于20的等价答案) (4)15000(大于等于15000的等价答案) (5)10(大于等于10且小于15的等价答案) (6)7000(大于等于15000的等价答案) (7)1、2、3、7 (8)1.1(非整数的等价答案) (9)N/A ) 解析: 测试编号1:依据题干含义,当C、A、B全为零的时候,应该输出为0,也就是覆盖1,2,3,8等有效等价类; 测试编号2:覆盖1、2、3、4等价类输出为1,且A为20000/100=200点,所以乘机次数应该大于等于20次; 测试编号3:覆盖1、2、3、5等价类输出为2,且乘机次数为15,所以点数应该为大于等于150点的数值,所A应该大于等于15000的数值; 测试编号4:覆盖1、2、3、6等价类输出为3,且A为10000/100=100点,所以乘机次数应该大于等于10且小于15; 测试编号5:C为7、B为0、预期输出为4,所以乘机点数应该大于等于70点,所以A应为大于等于7000的数值,覆盖 1、2、3、7等价类; 测试编号6:覆盖9、2、3,即C为非整数; 测试编号7:覆盖10、2、3,即应为无效输入,没有对应的输出 即N/A。 (3).对于本案例的黑盒测试来说,以上测试方法有哪些不足?(分数:2) __________________________________________________________________________________________ 正确答案:( 1)无法体现出C、A/B之间的制约关系,比如当满足A/B(转换后对应的点数满足),但不满足C(乘机次数)的情况; 2)没有考虑手机端的情况,题干中B的数值都为0。 ) 解析: 本题中由于存在多条件的制约情况,如输出1时,需要乘机次数C和点数A/B都符合特定的要求,无法很好的体现出条件之间的制约情况,比如点数符合对应档次要求,但乘机次数未达到要求的情况;另外测试时没有对手机端进行测试。 阅读下列说明,回答下列问题。 【说明】 某公司欲开发一款二手车物流系统,以有效提升物流成交效率。该系统的主要功能是: (1) 订单管理:帮买顾问看到有买车线索后,会打电话询问买家是不是需要物流,若需要,帮买顾问就将这个线索发起为订单,帮助买家来找承运商。 (2)线路管理与推荐:对承运商的线路进行管理。根据运输方式的不同,线路分为三种,即包车线路、固定线路、竞价体系,其中包车线路和固定线路是合约制。接入订单系统会根据订单的内容选择合适的承运商。即: 有新订单时,若符合固定线路和包车线路,系统自动分配给合约承运商;若不符合合约,系统将订单需求信息推送给各承运商,承运商对订单进行竞拍出价。 (3)合约管理:根据公司与承运商确定的合约,对合约内容进行设置。 (4)基础信息管理:包括帮买顾问(这部分缺失)(分数:20) (1).系统前端APP需支持不同品牌的不同系统平台,设计兼容性测试矩阵,以对系统的兼容性进行测试。(分数:6) __________________________________________________________________________________________ 正确答案:( 解析: 题干中明确要求APP是针对不同品牌的不同系统,也就是一个品牌会涉及多种不同的系统,同时需要测试多种品牌,所以在设计兼容矩阵的时候,应该为: __________________________________________________________________________________________ 正确答案:( 50000,1(功能正常) 50000.1,1(竞拍价输入异常,非整数) 50000,1.1(可接受的浮动比例异常,非整数) 50000,--(SQL注入式攻击,或Xss攻击测试用例任选一个) ) 解析: (3).承运商竞拍部分的性能要求最高。采用性能测试工具在以系统竞拍功能为主进行性能测试时,采用Apdex (应用性能指数)对用户使用该系统的性能满意度进行度量,系统需要满足Apdex指数为0.9以上。测试数据如表3-1所示,请计算本系统的Apdex指数,并说明本系统是否达到要求。 表3-1 测试数据表(T=500ms) __________________________________________________________________________________________ 正确答案:( Apdex 定义了应用响应时间的最优门槛为 T,另外根据应用响应时间结合 T 定义了三种不同的性能表现: Satisfied(满意):应用响应时间低于或等于 T(T 由性能评估人员根据预期性能要求确定),比如 T 为 1.5s,则一个耗时 1s 的响应结果则可以认为是 satisfied 的。 Tolerating(可容忍):应用响应时间大于 T,但同时小于或等于 4T。假设应用设定的 T 值为 1s,则 4 * 1 = 4 秒极为应用响应时间的容忍上限。 Frustrated(烦躁期):应用响应时间大于 4T; Apdext= (Satisfied Count + Tolerating Count / 2) / Total Samples; 本题为:(185+20/2)/(185+20+10)=0.9070 >=0.9 所以符合要求。 ) 解析: 阅读下列说明,回答下列问题。 【说明】 某汽车维修公司的工时计算模块每天定时根据系统登记的维修信息统计维修工的工时工资。维修工分为学徒、普通维修工和高级维修工三种,三种维修工有不同的时薪标准。 图4-1是该模块的类图,图中属性和操作前的“+”、“#”和“-”分别表示公有成员、保护成员和私有成员。 其中: (1) 类Engineer表示普通维修工。 (2)类studentEngineer和seniorEngineer都重新实现了类Engineer的方法calReward () 。 (3)方法calReward () 根据每个维修工每天的工时数(workTime)、时薪(hourSalary)来计算当天的工时工资。 (4)方法getReward () 调用方法calReward () 获取工时工资并打印显示。 (5) 类Svstem中的方法statReward () 中首先调用了该类的方法load (),获取本系统工程师列表,然后调用了类Engineer中的方法calReward () 。现拟采用面向对象的方法进行测试。(分数:20) (1).(1)图4-1所示的类图中,类System和Engineer之间是什么关系? (2)类seniorEngineer重 新实现了类Engineer的方法calReward (),这是面向对象的什么机制?(分数:4) __________________________________________________________________________________________ 正确答案:( (1)关联关系 (2)多态机制 ) 解析: (2).类seniorEngineer中的方法calReward () 和类stud entEngineer中的方法getReward ()是否需要重新测试?(分数:6) __________________________________________________________________________________________ 正确答案:( 对父类中已经测试过的成员函数,有两种情况需要在子类中重新测试:(1)继承的成员函数在子类中做了改动;(2)成员函数调用了改动过的成员函数的部分。 本题中seniorEngineer中的方法calReWard()重写了,需要重新测试; 题干中(说明4)明确了getReward()方法要调用calReward()方法,而calReward()是重写了的,所以studentEngineer中的方法getReward()属于调用了改动过的成员函数,需要重新测试。 ) 解析: (3).(1)请结合题干说明中的描述,给出测试类Engineer方法calReward () 时的测试序列。 (2)请给出图4-1中各个类的测试顺序。 (3)从面向对象特性考虑,测试类System中方法statReward () 时应注意什么?(分数:10) __________________________________________________________________________________________ 正确答案:( (1)依据说明3中的描述,再结合本题中时薪(hourSalary)是属性,所测试序列如下: Engineer()-setWorkTime()-calReward()-getReward()(注意本题时薪属于属性,不是方法/函数,后面getReward()可以不写) (2)由于senioEngineer和studentEngineer是Engineer的子类,sysytem要调用Engineer中的方法,所以类的测试顺序为:Engineer-seniorEngineer-studentEngineer-system(或者Engineer-studentEngineer -seniorEngineer -system) (3)在测试System中statReward()方法时需要基类Engineer、子类studentEngineer、seniorEngineer中的calReward()方法,即需要分别对各类的calReward()方法设计测试用例进行测试。 ) 解析: 阅读下列说明,回答下列问题。 【说明】 在某嵌入式智能服务机器人的软件设计中,为了更好地记录机器人的个体信息和机器人的工作信息,为智能服务机器人设计了信息数据库。数据库主要完成收集智能服务机器人反馈信息的作用,记录所有机器人的所有工作记录,以方便使用者对机器人的管理和对机器人状态的掌握,并且在机器人发生运行故障时,可以根据数据库存储的信息分析产生故障的原因。数据库收集智能服务机器人反馈信息的流程如下: 服务器端接收反馈信息。 (1)第一次解析判断反馈信息类型是否正确,若正确执行(2),否则执行(3); (2)第二次解析判断反馈信息内容是否正确,若正确执行(4),否则执行(3); (3)调用错误信息处理函数后执行(4) ; (4)将反馈信息存入数据库。(分数:20) (1).在本软件测试过程中,测试人员为了设计测试用例,根据题目中的说明,画出了机器人反馈信息收集软件流程图,如图5.1所示 图5.1 请在下列选项中,为图5.1中的空(1) ~ (3)选择正确的描述内容。(1) 处对应________ (2)处对应________,(3)处对应________。 (1) A.反馈格式是否正确 B.反馈长度是否正确 C.反馈类型是否正确 D.反馈内容是否正确 (2) A.标记错误信息 B.错误信息处理 C.错误信息纠正 D.错误信息报告 (3) A.信息存入内存 B.信息存入文件 C.信息存入数据库 D.倍息存入软件(分数:6) __________________________________________________________________________________________ 正确答案:( (1)D (2)B (3)C ) 解析: 依据题干说明(1)(2)(3)(4)的描述,(1)处应该为:判定反馈内容是否正确;(2)处应该为:执行错误信息处理函数;(3)信息存入数据库 (2).软件的结构覆盖率是度量测试完整性的一种手段。也是度量测试有效性的一种手段,在嵌入式软件白盒测试过程中。通常以语句覆盖率、分支覆盖率和MC/DC覆盖率作为度量指标。 在实现题目说明中第(1) 、(2) 条功能时,设计人员采用了下列算法: 请指出对上述算法达到100%语句覆盖、100%分支覆盖和100%MC/DC覆盖所需的最少测试用例数目。 表5-1测试覆盖用例统计表 __________________________________________________________________________________________ 正确答案:( (1)3 (2)3 (3)4 ) 解析: 语句覆盖(SC):设计足够的测试用例,使得使被测试程序中每条语句至少执行一次。 判定覆盖(DC):设计足够的测试用例,使得使程序中的每个判定至少都获得一次“真值”或“假值”;又称分支覆盖:使程序中的每一个取“真”分支和取“假”分支至少经历一次。 修正判定条件覆盖(MCDC):设计足够的测试用例,使得每一程序模块的入口和出口点都要考虑至少被调用一次,每个程序的判定到所有可能的结果值要至少转换一次;程序的判定被分解为通过逻辑操作符(and or)连接的bool条件,每个条件判定的结果值是的。 本题中是两个if…else…的嵌套结构, 语句覆盖和判定覆盖:当第1层if为真时就不会覆盖假,所以假部分需要一个测试用例覆盖,当第1层if判定为真时可以覆盖第2层if判定为真的结构或者第2层if判定为假的结构,所以当要覆盖第2层判定,需要2个测试用例,所以综合起来至少需要3个测试用例来达到语句覆盖的要求和判定覆盖的要求。 MC/DC覆盖: 由于是嵌套结构,满足第一个判定的测试用例为:(TT)(FT)(TF);第2个判定为T,F,由于第一个判定为T后会涉及到第2个判定,所以综合起来需要4个测试用例,如下图: 表5-2测试用例 __________________________________________________________________________________________ 正确答案:( (1)报告反馈类型不同 (2)报告信息内容不正确 (3)错误的 (4)典型类型3信息 ) 解析:
表2-2 额外积分奖励规则刷卡日期 积分 每月9日、19日 刷卡金额小数部分四舍五入后的2倍 11月11日 刷卡金额小数部分四舍五入后的6倍 12月12日 刷卡金额小数部分四舍五入后的4倍 其他日期 刷卡金额小数部分四舍五入
银行 B 开发了一个程序来计算用户每次刷卡所累积的积分,程序的输入包括会员级别 L、刷卡日期D 和刷卡金额 A. 程序的输出为本次积分 S。其中。L 为单个字母且大 小写不敏感,D 由程序直接获取系统日期,A 为正浮点数最多保留两位小数,S 为整数。(分数:15)会员级别 普通会员 超级会员 PASS会员 级别代码 M S P 额外积分奖励 0% 100% 200%
(分数:5)输入条件 有限等价类 编号 无效等价类 编号 会员等级L M 1 非字母 9 S 2 非单个字母 10 (1) 3 (4) 11 刷卡日期D 每月9日、19日 4 11月11日 5 (2) 6 其他日期 7 刷卡金额A (3) 8 非浮点数 12 (5) 13 多于两位小数的正浮点数 14
(分数:5)编号 输入 覆盖等价类(编号) 预期输出S L D A 1 N 1月9日 500.25 1,4,8 (1) 2 S 11月11日 (2) 2,5,8 6000 3 P 12月12日 500 (3) 6000 4 P (4) 500 3,7,8 1500 5 (5) 其他日期 500 9,7,8 N/A 6 非单个字母 其他日期 500 10,7,8 (6) 7 (7) 其他日期 500 11,7,8 N/A 8 N 其他日期 非浮点数 (8) N/A 9 N 其他日期 非正浮点数 1,7,13 N/A 10 N 其他日期 (9) 1,7,14 N/A
表2-6 边界值编号 等价类 1 0<=S<=20000 2 (1) 3 (2)
(分数:5)编号 边界值 1 S=20000 2 (3) 3 (4) 4 S=0 5 (5) 6 (6)
)平台/浏览器 iE 火狐 360浏览器 UC ...... 安卓平台 苹果平台 黑霉平台 ......
(分数:6)覆盖率类型 所需的最少用例数 也语句覆盖 (1) 100%条件覆盖 (2) 10例也MC/DC覆盖 (3)
表2-2 额外积分奖励规则酒店等级 每次入住可获得的欢迎积分 1 100 2,3 250 4,5 500 6 800
该酒店集团开发了一个程序来计算会员每次入住后所累积的积分,程序的输入包括会员级别L、酒店等级C和消费金额A(单位:元),程序的输出为本次积分S。其中,L为单个字母且大小写不敏感,C为取值1到6的整数,A为正浮点数且最多保留两位小数,S为整数。(分数:20)会员级别 优先会员 金会员 白金会员 级别代码 M G P 额外积分奖励 0% 50% 100%
(分数:7)输入条件 有效等级类 编号 无效等级类 编号 会员等级L M 1 非字母 9 G 2 非单个字母 10 (1) 3 (5) 11 酒店等级C (2) 4 非整数 12 2,3 5 (6) 12 (3) 6 大于6的整数 14 6 7 消费金额A (4) 8 非浮点数 15 (7) 16 多于两位小数的正浮点数 17
(分数:13)编号 输入 覆盖等价类(编号) 预期输出S L C A 1 M 1 100 148 (1) 2 G 2 (2) 258 550 3 P 5 100 (3) 900 4 M (4) 100 178 1000 5 (5) 1 100 4 N/A 6 (6) 1 100 4810 N/A 7 A 1 100 4811 (7) 8 M (8) 100 1812 N/A 9 M 0 100 (9) N/A 10 M (10) 100 1814 N/A 11 M 1 (11) 1415 N/A 12 M 1 (12) 1416 N/A 13 M 1 (13) 1417 N/A
)平台/浏览器 iE 火狐 360浏览器 UC ...... 安卓平台 苹果平台 黑霉平台 ......
(分数:10)序号 前置条件 输入 输出(预期结果) 1 无 不能创建信道 组网失败,软件一直在组网状态 2 无 创建信道成功 组网成功,(1) 3 组网成功 数据类型无效 各层时间扫描 4 组网成功 数据类型有效且为(2) 经串口将是内容温湿度数据发送到网关 5 组网成功 数据类型有效且为火灾监测数据 (3) 6 组网成功 数据类型有效且为台灯控制指令 向(4)控制节点发送控制指令 7 组网成功 数据类型有效且为(5) 向空制节点发送控制指令 8 组网成功 数据类型有效,但既不是室内环境数据也不史控制指令 各层时间扫描
(分数:6)覆盖率类型 所需的最少用例数 100%语句覆盖 (1) 100%条件覆盖 (2) 100%MC/DC覆盖 (3)
表2-2点数累计规则乘机次数 点数 奖励档次 奖励 ≥20次 ≥200点 1 国内任意航段免票2张 ≥15次 ≥150点 2 国内任意航段免票1张 ≥10次 ≥100点 3 280元国内机票代金券2张 ≥7次 ≥70点 4 180元内机票代金券2张
航空公司开发了一个程序来计算会员在该促销活动后的奖励,程序的输入包括会员在活动期间的乘机次数C、官网购票金额A (单位:元) 和手机客户端购票金额B (单位:元),程序的输出为本次活动奖励档次L。其中,C、A、B为非负整数,L为0~5之间的整数(0表示无奖励)。(分数:15)票面价 官网购票 手机客户端购票 每满100元 1点 1.2点
(分数:4)输入/输出 有效等价类 编号 无效等价类 编号 乘机次数C (1) 1 非整数 9 负整数 10 官网购票金额A 非负整数 2 非整数 11 负整数 12 手机客户端 非负整数 3 非整数 13 (4) 14 奖励档次L 1 4 2 5 3 6 (2) 7 (3) 8
(分数:9)编号 输入 覆盖等价类(编号) 预期输出L C A B 1 0 0 0 [1] [2] 2 [3] 20000 0 1,2,3,4 1 3 15 [4] 0 1,2,3,5 2 4 [5] 10000 0 1,2,3,6 3 5 7 [6] 0 [7] 4 6 [8] 0 0 9,2,3 N/A 7 -1 0 0 10,2,3 [9] 8 0 A 0 11,2,3 N/A 9 0 -1 0 12,2,3 N/A 10 0 0 A 13,2,3 N/A 11 0 0 -1 14,2,3 N/A
)品牌\\系统 鸿蒙 ... IOS13.0 华为 ... 苹果
(2).承运商进行竞价时,前端需提交竞拍价格(整数, 单位:元)数和可接受浮动比例(整数),针对这一功能设计4个测试用例。(分数:8)品牌\\系统 鸿蒙 ... IOS13.0 华为 ... 苹果
(分数:6)请求执行时间t 处理请求数量 t<500ms 185 500ms<t≤2000ms 20 t>2000ms或没有正常处理 10
(分数:6)覆盖率类型 所需的最少用例数 100%语句覆盖 (1) 100%分支覆盖 (2) 100%MC/DC覆盖 (3)
(3).为了测试软件功能,测试人员设计了表5- -2所示的测试用例,请填写该表中的空(1) ~ (4)。信息有效 信息类型正确 信息内容正确 第一个判断 第二个判断 T T T T T F T - F - T F - F - T T T T F
(分数:8)序号 输入 输出(预测结果) 1 反馈类型不同 (1),错误信息存入数据库 2 反馈类型和内容均不正确 3 反馈类型正确,反馈内容不正确 (2),错误信息存入数据库 4 反馈类型正确,反馈内容正确 信息存入数据库 5 内容正确的典型类型1信息 典型类型1信息存入数据库 6 内容(3)典型类型2信息 报告典型类型2信息内容错误,错误信息存入数据库 7 内容正确的典型类型3佑息 (4),信息存入数据库