image

编辑人: 舍溪插画

calendar2025-07-22

message3

visits662

2014年11月软件评测师下午题答案及解析

一、问答题

1、阅读下列C程序,回答下列问题。

1、请针对上述C程序给出满足100%DC(判定覆盖)所需的逻辑条件。



参考答案:

解析:

本题考查的是白盒测试中的判定覆盖法。判定覆盖要求设计足够的测试用例,使得被测程序中的每个判定表达式至少获得一次真值和一次假值,从而确保每个分支至少通过一次测试。根据题目给出的程序,有六个判定表达式,因此需要至少六个逻辑条件来满足判定覆盖的要求。这些逻辑条件应该涵盖所有可能的分支情况,并且需要根据实际情况进行设计和选择。同时,还需要考虑边界条件和特殊情况的处理,以确保程序的健壮性和可靠性。因此,本题需要至少六个逻辑条件来满足判定覆盖的要求。

2、试题一

阅读下列C程序,回答下列问题。

2、请画出上述程序的控制流图,并计算其环路复杂度VG.。



参考答案:控制流图

环路复杂度V(G)=11

解析:

第二小题主要考察白盒测试用例设计方法中的基本路径法,需要掌握根据代码绘制控制流图以及计算环路复杂度的知识点。

控制流图是描述程序控制流的一种图示方式,由节点和定向边构成。节点代表一个基本块,定向边代表控制流的方向。对于复合条件的判断语句,需要将其拆分成单个条件的嵌套判断来绘制控制流图。

在本题中,程序中的判断语句涉及到复合条件,因此在绘制控制流图时需要注意。对于if(month>=1 && month<=12)这条判断语句,由于是由两个条件通过逻辑与运算符连接,绘制控制流图时需要将其拆分成两个单独的判断语句。同理,if(month==4||month==6||month==9||month==11)这条判断语句由四个条件通过逻辑或运算符连接,需要拆分成四个单独的判断语句。

程序的环路复杂度等于控制流图中判定节点的个数加1。判定节点指的是控制流图中的决策点,例如在if语句或case语句中的点。根据描述,控制流图中的判定节点个数为10,因此环路复杂度V(G)=10+1=11。

由于无法查看提供的图片内容,无法准确绘制出控制流图。但可以根据上述解析理解如何根据代码绘制控制流图,并计算环路复杂度。

3、阅读下列C程序,回答下列问题。

3、请给出问题2中控制流图的线性无关路径。

参考答案:线性无关路径:
1.1-2-19
2.1-2-3-19
3.1-2-3-4-12-13-14-15-16-18-19
4.1-2-3-4-12-13-14-15-16-17-19
5.1-2-3-4-12-13-14-15-17-19
6.1-2-3-4-12-13-14-17-19
7.1-2-3-4-12-13-17-19
8.1-2-3-4-5-11-19
9.1-2-3-4-5-6-10-19
10.1-2-3-4-5-6-7-9-19
11.1-2-3-4-5-6-7-8-19

解析:

{第三小题考查的是白盒测试用例设计方法中的基本路径法,需要找出程序中的线性无关路径。线性无关路径是指包含一组之前没有处理过的语句或条件的路径。

从控制流图来看,每条线性无关路径都是包含至少一条其他路径中没有的边的路径。根据提供的控制流图,可以画出所有的线性无关路径,包括参考答案中给出的路径。因此,本题中应该有11条线性无关路径,与参考答案一致。}

4、阅读下列说明,回答下列问题。
[说明]
某商店为购买不同数量商品的顾客报出不同的价格,其报价规则如表1所示。

如买11件需要支付10×30+1×27=327元,买35件需要支付10×30+10×27+10×25+5×22=930元。
现为该商家开发一个软件,输入为商品数C(1<=C<=100),输出为应付的价钱P。 
1、请采用等价类划分法为该软件设计测试用例(不考虑C为非整数的情况)。

参考答案:

l本题中主要范围限制为1<=C<=100,即可以划分为两个无效和一个有效等价,但由于每一个小的等价类是单独处理的,因此需要再进一步的划分。参考答案如下:

                                             

用例1:1~10中任意一个数

用例2:11~20中任意一个数           
用例3:21~30中任意一个数

用例4:31~100中任意一个数          
用例5:101

用例6:0   


解析:

:本题考查的是黑盒测试法中的等价类划分法。根据题目说明,我们需要为软件设计测试用例,输入为商品数C(1<=C<=100),输出为应付的价钱P。按照等价类划分法,我们可以将C的取值范围划分为多个等价类,并从每个等价类中选取一个代表性的数据作为测试用例。同时,我们还需要考虑软件的异常处理机制,如输入超出范围的数据或非法数据等。因此,上述答案给出了基于等价类划分法的测试用例设计思路,涵盖了所有可能的输入情况,并考虑了软件的异常处理机制。

5、阅读下列说明,回答下列问题。
[说明]
某商店为购买不同数量商品的顾客报出不同的价格,其报价规则如表1所示。 
表1 不同数量商品对应的单价

如买11件需要支付10×30+1×27=327元,买35件需要支付10×30+10×27+10×25+5×22=930元。
现为该商家开发一个软件,输入为商品数C(1<=C<=100),输出为应付的价钱P。 
2、请采用边界值分析法为该软件设计测试用例(不考虑健壮性测试,即不考虑C不在1到100之间或者是非整数的情况)。

参考答案:

由于题目要求不考虑健壮性测试,即不考虑C不在1到100之间或者是非整数的情况,
所以参考答案如下:

1、2、9、10、11、12、19、20、21、22、29、30、31、32、99、100


解析:

第二小题考查边界值分析法。在软件测试中,边界值分析法是一种重要的测试方法,通常用于检测程序在边界条件下的行为是否正常。对于本题来说,由于商品数量C的取值范围是固定的(在题目给出的条件下为大于等于一小于等于一百),因此在设计测试用例时,应当考虑边界值。根据题目要求,不考虑健壮性测试,即不考虑商品数C不在指定范围内的情况以及非整数的情况。因此,在设计测试用例时,商品数C应选择边界值,如最小可能值(即商品数等于一),最大可能值(即商品数等于一百),以及最大可能值的次大值(即商品数减一)。同时,还需要考虑一些具体的数值点,如分界点等。因此,具体的测试用例的商品数C应选择为:1、最大整数(根据题目给出的表格应为商品数35)、次大整数(即商品数减去一,即商品数34)。同时还要注意其他的数值点如第二列商品数量开始变化的位置如第9个和第十件等(例如第二列商品数量从每件单价为30变为每件单价为27的位置),这些位置也需要进行考虑作为测试用例。

6、阅读下列说明,回答下列问题。
[说明]
某商店为购买不同数量商品的顾客报出不同的价格,其报价规则如表1所示。 
表1 不同数量商品对应的单价

如买11件需要支付10×30+1×27=327元,买35件需要支付10×30+10×27+10×25+5×22=930元。
现为该商家开发一个软件,输入为商品数C(1<=C<=100),输出为应付的价钱P。 
3、列举除了等价类划分法和边界值分析法以外的三种常见的黑盒测试用例设计方法。

参考答案:错误推测法,因果图法,判定表驱动法,正交试验法,功能图法。(任意三种即可)

解析:

除了等价类划分法和边界值分析法以外,常见的黑盒测试用例设计方法包括错误推测法、因果图法以及判定表驱动法。这些方法在黑盒测试中都有广泛的应用,帮助测试人员更有效地设计测试用例,提高软件的质量。

7、阅读下列说明,回答下列问题。
[说明]
某大型匹萨加工和销售商为了有效管理匹萨的生产和销售情况,欲开发一套基于Web的信息系统。其主要功能为销售、生产控制、采购、运送、存储和财务管理等。系统采用Java EE平台开发,页面中采用表单实现数据的提交与交互,使用图形(Graphics)以提升展示效果。
1、设计两个表单项输入测试用例,以测试XSS(跨站点脚本)攻击。系统设计时可以采用哪些技术手段防止此类攻击。

参考答案:XSS(跨站点脚本攻击)是一种注入式攻击,主要通过恶意脚本进行攻击,任何脚本如<SCRIPT>都不该被接受。
(1)<script>alert('Wufff!')</script>
(2)<b onmouseover=alert('Wufff!')>click me!</b>
防止的主要手段是对功能符号进行编码(转义)。

解析:

题目考查的是Web应用的安全性测试,特别是跨站点脚本攻击(XSS)的测试以及预防手段。题目给出的参考答案只涉及到了XSS攻击的一种形式——反射型XSS攻击,并给出了一个基本的防御手段——对功能符号进行编码(转义)。但实际上,XSS攻击还包括存储型XSS攻击和DOM型XSS攻击等,因此除了对输入数据进行编码处理外,还需要进行其他安全性措施如设置Content Security Policy等。在测试时,也需要设计其他类型的测试用例来全面测试系统的安全性。

8、阅读下列说明,回答下列问题。
[说明]
某大型匹萨加工和销售商为了有效管理匹萨的生产和销售情况,欲开发一套基于Web的信息系统。其主要功能为销售、生产控制、采购、运送、存储和财务管理等。系统采用Java EE平台开发,页面中采用表单实现数据的提交与交互,使用图形(Graphics)以提升展示效果。
2、简述图形测试的主要检查点。

参考答案:图形测试的主要检查点如下:
(1)颜色饱和度和对比度是否合适;
(2)需要突出的链接的颜色是否容易识别;
(3)是否正确加载所有的图形。

解析:

图形测试的主要检查点包括:

  1. 检查图形的显示是否正确,如大小、位置等;
  2. 检查图形的颜色饱和度和对比度是否合适,以确保用户能够清晰地看到图形;
  3. 检查需要突出的链接的颜色是否容易识别,以确保用户能够轻松地找到重要的信息或操作;
  4. 检查图形是否正确地加载,以避免页面加载时出现错误或导致页面显示异常。

以上内容在参考答案中均有涉及,因此答案应为A。

9、阅读下列说明,回答下列问题。
[说明]
某大型匹萨加工和销售商为了有效管理匹萨的生产和销售情况,欲开发一套基于Web的信息系统。其主要功能为销售、生产控制、采购、运送、存储和财务管理等。系统采用Java EE平台开发,页面中采用表单实现数据的提交与交互,使用图形(Graphics)以提升展示效果。
3、简述页面测试的主要方面。

参考答案:页面测试可以从以下几个方面进行:
(1)页面的一致性;
(2)在每个页面上是否设计友好的用户界面和直观的导航系统;
(3)是否考虑多种浏览器的需要;
(4)是否建立了页面文件的命名体系;
(5)是否充分考虑了合适的页面布局技术,如层叠样式表、表格和帧结构等。

解析:

页面测试主要涉及到以下几个方面:

  1. 页面的一致性:测试页面在不同部分之间是否具有一致的风格和设计,以确保用户在整个应用中的体验是连贯的。
  2. 用户友好性:测试页面是否设计有友好的用户界面和直观的导航系统,使用户能够轻松地理解和使用页面功能。
  3. 浏览器兼容性:测试页面在不同的浏览器上是否都能正常显示和功能正常,因为不同的浏览器对网页的解析和渲染方式可能存在差异。
  4. 布局合理性:测试页面的布局是否合理,包括元素布局、功能块布局、页面颜色搭配、字体大小等,以确保用户能够清晰地看到和理解页面内容。
  5. 页面文件的命名体系:测试是否建立了页面文件的命名体系,以便于后期的维护和修改。

以上内容均与参考答案所述相符。

10、【老版知识点】阅读下列说明,回答下列问题。

[说明]
某大型匹萨加工和销售商为了有效管理匹萨的生产和销售情况,欲开发一套基于Web的信息系统。其主要功能为销售、生产控制、采购、运送、存储和财务管理等。系统采用Java EE平台开发,页面中采用表单实现数据的提交与交互,使用图形(Graphics)以提升展示效果。
4、系统实现时,对销售订单的更新所用的SQL语句如下:

PreparedStatement
pStmt=connection.prepareStatement("UPDATE SalesOrder SET status= ? WHERE
OrderID= ?")
然后通过setString(...);的方式设置参数值后加以执行。
设计测试用例以测试SQL注入,并说明该实现是否能防止SOL注入。

参考答案:




设计如下测试:[注:设计类似如下用例即可,其中包含SQL功能符号使SQL变为不符合设计意图即可]

PreparedStatement
pStmt=connection.prepareStatement("UPDATE SalesOrder SET status= ? WHERE
OrderID= ?")

采用传递参数的形式,Java的JDBC驱动自动会将其按照相应的类型处理,功能符号会进行转义。因此,该SQL语句是安全。

解析:

本题考查了Web应用中的SQL注入问题。SQL注入是Web应用安全测试的重要部分,当Web应用直接将用户输入的数据拼接到SQL语句中时,就存在被恶意用户利用的可能性,造成数据泄露、数据篡改等严重后果。

在本题中,销售订单的更新使用的是PreparedStatement方式,参数通过setString方法设置。这种方式可以确保用户输入的数据不会作为SQL语句的一部分被执行,而是作为参数传递,并由数据库驱动进行适当处理。即使输入包含SQL功能符号,这些符号也会被转义,不会影响到SQL语句的结构。因此,这种实现方式是防止SQL注入的有效手段。

为了测试该系统的安全性,可以设计测试用例,尝试在"status"和"OrderID"参数中插入SQL功能符号,如’–’、’OR’等,然后观察系统的反应。如果系统能够正确处理这些输入,不执行非预期的SQL操作,那么就可以认为该系统对SQL注入有一定的防护能力。

11、阅读下列说明,回答下列问题。
[说明]
某大型教育培训机构近期上线了在线网络学校系统,该系统拓扑结构如图1所示。企业信息中心目前拟对该系统用户认证机制进行详细的安全性测试,系统注册用户分为网校学员、教师及管理员三类,其中网校学员采用用户名/口令机制进行认证,教师及管理员采用基于公钥的认证机制。

1、为防止针对网校学员的口令攻击,请从口令的强度、传输存储及管理等方面,说明可采取哪些安全防护措施。相应地,对于网校学员所采用的口令认证机制进行测试时,请说明从用户名称及用户口令两个方面开展测试时应包含哪些基本的测试点。

参考答案:(1)可采取的安全防护措施包括:
①口令强度:可设置最小口令长度,同时可采取要求用户在口令中使用非数字字母的字符等增加口令复杂度的手段提高口令强度。
②口令传输存储:可采用加密或Hashing手段,系统服务端存储的用户口令可加密或Hashing后存储,网络传输的用户口令可加密或Hashing后进行传输。
③口令管理:可设置最大口令时效强制用户定期更新口令,引入口令锁定机制以应对口令猜测攻击,引入口令历史强制用户设置新口令等。
(2)对口令认证机制测试应包含的基本测试点:
①对用户名称测试的主要测试点在于测试用户名称的唯一性,即测试同时存在的用户名称在不考虑大小写的情况下,不能够同名。
②对用户口令测试应主要测试用户口令是否满足当前流行的控制模式。主要测试点应包括最大/最小口令时效、口令历史、最小口令长度、口令复杂度、加密选项及口令锁定等。

解析:

本题主要考察的是基于口令的用户认证机制的安全测试。
对于防止针对网校学员的口令攻击,可以从口令的强度、传输存储及管理等方面采取安全防护措施。对于口令强度,可以设置最小口令长度,并要求用户使用复杂的口令,以增加破解难度。对于口令的传输和存储,应采用加密或Hashing技术,确保口令在传输和存储过程中的安全性。对于口令管理,可以设定最大口令时效,强制用户定期更换口令,同时引入口令锁定机制,以应对口令猜测攻击。
在测试网校学员所采用的口令认证机制时,从用户名称方面,主要测试用户名称的唯一性。从用户口令方面,应包含对口令相关策略的基本测试点,如最大/最小口令时效、口令历史、最小口令长度、口令复杂度、加密选项及口令锁定等进行测试,以确保系统的安全性和稳定性。

12、阅读下列说明,回答下列问题。
[说明]
某大型教育培训机构近期上线了在线网络学校系统,该系统拓扑结构如图1所示。企业信息中心目前拟对该系统用户认证机制进行详细的安全性测试,系统注册用户分为网校学员、教师及管理员三类,其中网校学员采用用户名/口令机制进行认证,教师及管理员采用基于公钥的认证机制。

图1  在线网络学校系统拓扑结构
2、为提高系统认证环节安全性,系统在网校教师及管理员登录认证时引入了USBKey,请说明对公钥认证客户端进行安全测试时,USB Key的功能与性能测试应包含哪些基本的测试点。

参考答案:客户端USB Key测试的基本测试点:
(1)功能测试
①是否支持AES、RSA等常用加解密算法。
②是否提供外部接口以支持用户证书及私钥的导入。
③是否提供外部接口支持将数据传入Key内,经过公钥,私钥计算后导出。
④是否能实现USB Key插入状态实时监测,当USB Key意外拔出时是否能自动锁定用户状态。
⑤是否使用口令进行保护。
(2)性能测试
①是否具备私钥不能导出的基本安全特性。
②Key内加解密算法的执行效率是否满足系统最低要求。

解析:

本题考查了USB Key的安全测试内容。USB Key作为身份认证的一种手段,内置了单片机或智能卡芯片,用于存储用户的私钥和数字证书,并利用内置的加密算法进行用户身份认证。由于其涉及安全性,测试时需要关注其功能和性能。功能测试主要关注USB Key是否支持特定的加解密算法、是否提供必要的接口支持用户证书和私钥的导入导出、是否能实时监测USB Key的插入状态并在意外拔出时锁定用户状态等。此外,还要测试其是否使用口令保护。性能测试则关注USB Key的加密强度(私钥的导出安全性)以及加解密算法的执行效率是否满足系统的基本要求。这些测试点都是为了确保USB Key的安全性和效率能够满足在线网络学校系统的需求。

13、阅读下列说明,回答下列问题。
[说明]
某大型教育培训机构近期上线了在线网络学校系统,该系统拓扑结构如图1所示。企业信息中心目前拟对该系统用户认证机制进行详细的安全性测试,系统注册用户分为网校学员、教师及管理员三类,其中网校学员采用用户名/口令机制进行认证,教师及管理员采用基于公钥的认证机制。

图1  在线网络学校系统拓扑结构
3、系统证书服务器主要提供证书审核注册管理及证书认证两项功能,根据系统实际情况,目前只设置人员证书,请说明针对证书服务器的功能与性能测试应包含哪些基本的测试点。

参考答案:证书服务器测试的基本测试点:
(1)功能测试
①系统是否提证书的申请、审核、签发与管理功能。
②系统是否提供证书撤销列表的发布和管理等功能。
③系统是否提供证书认证策略及操作管理策略、自身证书安全管理等管理服务。
④是否可以提供加密证书和签名证书。
⑤证书格式是否采用标准X.509格式。
(2)性能测试
①检查证书服务器的处理性能是否具备可伸缩配置及扩展能力。
②关键部分是否采用双机热备和磁盘镜像等安全机制。
③是否满足系统的不间断运行、在线故障恢复和在线系统升级的需要。
④是否满足需求中预测的最大数量用户正常访问需求,且是否具备3~4倍冗余,并根据需要测试证书服务器的并发处理能力。

解析:

本题主要考查对证书服务器功能与性能的测试点的理解。根据题目描述,证书服务器主要提供证书审核注册管理及证书认证两项功能,因此测试点应围绕这两大功能进行。

功能测试方面,需要验证证书服务器是否具备证书的申请、审核、签发与管理功能,这是证书服务器最基本和核心的功能。此外,还需要测试系统是否提供证书撤销列表的发布和管理功能,以及是否提供证书认证策略及操作管理策略、自身证书安全管理等管理服务。同时,服务器是否能提供加密证书和签名证书,以及是否采用标准的X.509证书格式也是测试的重要内容。

性能测试方面,主要测试证书服务器的处理性能是否具有可伸缩性和扩展性,以满足未来用户增长的需求。另外,测试关键部分是否采用双机热备和磁盘镜像等安全机制,确保系统的稳定性和数据的安全性。还需要测试系统是否能够满足不间断运行、在线故障恢复和在线系统升级的需求。最后,为了确保证书服务器在实际使用中的性能表现,需要进行并发性能测试,确保在预测的最大用户访问量下,服务器能够正常运行并具有3~4倍的冗余能力。

14、阅读下列说明,回答下列问题。
[说明]
某嵌入式刹车控制软件,应用于汽车刹车控制器,该软件需求如下:
1.模式选择:采集模式控制离散量信号In_D1并通过模式识别信号灯显示软件当前工作模式。在信号In_D1为低电平时进入正常工作模式(模式识别信号灯为绿色),为高电平时进入维护模式(模式识别信号灯为红色)。软件在正常工作模式下仅进行刹车控制和记录刹车次数,在维护模式下仅进行中央控制器指令响应。
2.刹车控制:采用定时中断机制,以5ms为周期采集来自驻车器发出的模拟量信号In_A1以及来自刹车踏板发出的模拟量信号In_A2,并向刹车执行组件发送模拟量信号Out_A1进行刹车控制。
模拟量信号说明:1)In_A1、In_A2以及Out_A1信号范围均为[0.0V,10.0V],信号精度均为0.1V;2)Out_A1信号的计算方法为:Out_A1=In_A1+0.3×In_A2,在计算完成后需要在满足信号精度的要求下进行四舍五入及限幅处理。
3.记录刹车次数:在Out_A1大于4V时,读出非易失存储器NVRAM中保存的刹车次数记录进行加1操作,然后保存至非易失存储器NVRAM中。
4.响应中央控制器指令;接收来自中央控制器的串行口指令字In_S1,回送串行口响应字Out_S1。当接收的指令字错误时,软件直接丢弃该命令字,不进行任何响应。
指令字及响应字说明如表1所示。

4、本项目在开发过程中通过测试发现了17个错误,后期独立测试发现了31个软件错误,在实际使用中用户反馈了2个错误。请计算缺陷探测率(DDP)。

参考答案:DDP=(17+31)/(17+31+2)=96%

解析:

第四小题考察的是缺陷探测率(DDP)的计算。缺陷探测率是指测试过程中发现的软件错误数量与软件总错误数量的比率。在本题中,通过测试发现的错误数量为17个,后期独立测试发现的错误为31个,实际使用中用户反馈的错误为2个。因此,软件总错误数量为17+31+2=50个。缺陷探测率DDP计算为:DDP=(测试发现的错误数量+后期独立测试发现的错误数量)/(软件总错误数量)=(17+31)/50=96%。因此,答案是DDP=96%。

15、阅读下列说明,回答下列问题。
[说明]
某嵌入式刹车控制软件,应用于汽车刹车控制器,该软件需求如下:
1.模式选择:采集模式控制离散量信号In_D1并通过模式识别信号灯显示软件当前工作模式。在信号In_D1为低电平时进入正常工作模式(模式识别信号灯为绿色),为高电平时进入维护模式(模式识别信号灯为红色)。软件在正常工作模式下仅进行刹车控制和记录刹车次数,在维护模式下仅进行中央控制器指令响应。
2.刹车控制:采用定时中断机制,以5ms为周期采集来自驻车器发出的模拟量信号In_A1以及来自刹车踏板发出的模拟量信号In_A2,并向刹车执行组件发送模拟量信号Out_A1进行刹车控制。
模拟量信号说明:1)In_A1、In_A2以及Out_A1信号范围均为[0.0V,10.0V],信号精度均为0.1V;2)Out_A1信号的计算方法为:Out_A1=In_A1+0.3×In_A2,在计算完成后需要在满足信号精度的要求下进行四舍五入及限幅处理。
3.记录刹车次数:在Out_A1大于4V时,读出非易失存储器NVRAM中保存的刹车次数记录进行加1操作,然后保存至非易失存储器NVRAM中。
4.响应中央控制器指令;接收来自中央控制器的串行口指令字In_S1,回送串行口响应字Out_S1。当接收的指令字错误时,软件直接丢弃该命令字,不进行任何响应。
指令字及响应字说明如表1所示。

3、某测试人员设计了如表3所示的操作步骤,对模式选择功能进行测试(表中END表示用例到此结束)。 
表3

为进一步提高刹车控制软件的安全性,在需求中增加了设计约束:软件在单次运行过程中,若进入正常工作模式,则不得再进入维护模式。请参照表3的测试用例完成表4,用于测试该设计约束。 
表4

参考答案:

解析:


第三小题中,如果不考虑软件在单次运行过程中从正常工作模式不得进入维护模式的设计约束,表3中的测试顺序符合要求。然而,在实际测试中,由于真实环境条件的限制,必须考虑这种约束。维护模式是一种检修模式,不能在正常工作中进行检修。因此,必须保证在正常工作模式下,对维护模式的命令不响应。

根据这一设计约束,表4的测试用例需要调整。首先,上电后应让软件处于维护模式(In_D1为高电平,模式识别信号灯红色)。然后,发送命令使软件进入正常工作模式,验证模式识别信号灯是否变为绿色。最后,在正常工作模式下,发送进入维护模式的命令,并观察软件是否响应。如果软件不响应并保持在正常工作模式,即满足设计约束要求。这样的测试能够验证软件在正常工作模式下是否对维护模式的命令进行正确的处理。

16、阅读下列说明,回答下列问题。
[说明]
某嵌入式刹车控制软件,应用于汽车刹车控制器,该软件需求如下:
1.模式选择:采集模式控制离散量信号In_D1并通过模式识别信号灯显示软件当前工作模式。在信号In_D1为低电平时进入正常工作模式(模式识别信号灯为绿色),为高电平时进入维护模式(模式识别信号灯为红色)。软件在正常工作模式下仅进行刹车控制和记录刹车次数,在维护模式下仅进行中央控制器指令响应。
2.刹车控制:采用定时中断机制,以5ms为周期采集来自驻车器发出的模拟量信号In_A1以及来自刹车踏板发出的模拟量信号In_A2,并向刹车执行组件发送模拟量信号Out_A1进行刹车控制。
模拟量信号说明:1)In_A1、In_A2以及Out_A1信号范围均为[0.0V,10.0V],信号精度均为0.1V;2)Out_A1信号的计算方法为:Out_A1=In_A1+0.3×In_A2,在计算完成后需要在满足信号精度的要求下进行四舍五入及限幅处理。
3.记录刹车次数:在Out_A1大于4V时,读出非易失存储器NVRAM中保存的刹车次数记录进行加1操作,然后保存至非易失存储器NVRAM中。
4.响应中央控制器指令;接收来自中央控制器的串行口指令字In_S1,回送串行口响应字Out_S1。当接收的指令字错误时,软件直接丢弃该命令字,不进行任何响应。
指令字及响应字说明如表1所示。 

2、请简述本软件串行输入接口测试的测试策略及测试内容。针对表1中"读取刹车次数指令"进行鲁棒性测试时应考虑哪些情况?

参考答案:测试策略包括测试正常和异常指令的响应。
测试内容包括读取刹车次数和清除刹车次数两种指令。
对"读取刹车次数指令"鲁棒性测试时应考虑输入接口帧头错误、指令码错误、帧长错误、帧尾错误以及整个指令长度超过4B的情况。

解析:

本题主要考察测试策略的制定以及针对特定功能的鲁棒性测试内容。测试策略是测试工作的指导方针,它定义了测试的范畴、方法、资源等。在本题中,测试策略应包括正常和异常情况的测试,具体到串行输入接口,就是测试其对正常和异常指令的响应。

测试内容应涵盖软件的主要功能,根据题目描述,主要功能包括读取刹车次数和清除刹车次数。针对“读取刹车次数指令”的鲁棒性测试,需要考虑各种可能出现的错误情况,这包括帧头、指令码、帧长、帧尾的错误,以及指令长度超出预定长度的情况。这些都是为了验证软件在异常情况下是否能正确处理和响应,即软件的鲁棒性。

17、阅读下列说明,回答下列问题。
[说明]
某嵌入式刹车控制软件,应用于汽车刹车控制器,该软件需求如下:
1.模式选择:采集模式控制离散量信号In_D1并通过模式识别信号灯显示软件当前工作模式。在信号In_D1为低电平时进入正常工作模式(模式识别信号灯为绿色),为高电平时进入维护模式(模式识别信号灯为红色)。软件在正常工作模式下仅进行刹车控制和记录刹车次数,在维护模式下仅进行中央控制器指令响应。
2.刹车控制:采用定时中断机制,以5ms为周期采集来自驻车器发出的模拟量信号In_A1以及来自刹车踏板发出的模拟量信号In_A2,并向刹车执行组件发送模拟量信号Out_A1进行刹车控制。
模拟量信号说明:1)In_A1、In_A2以及Out_A1信号范围均为[0.0V,10.0V],信号精度均为0.1V;2)Out_A1信号的计算方法为:Out_A1=In_A1+0.3×In_A2,在计算完成后需要在满足信号精度的要求下进行四舍五入及限幅处理。
3.记录刹车次数:在Out_A1大于4V时,读出非易失存储器NVRAM中保存的刹车次数记录进行加1操作,然后保存至非易失存储器NVRAM中。
4.响应中央控制器指令;接收来自中央控制器的串行口指令字In_S1,回送串行口响应字Out_S1。当接收的指令字错误时,软件直接丢弃该命令字,不进行任何响应。
指令字及响应字说明如表1所示。 

1、在不考虑测量误差的情况下,根据所设计的输入填写表2中的横线处。 

参考答案:(1)4.6V    (2)7.3V    (3)10.0V    (4)10.0V

解析:

本题考查的是对嵌入式刹车控制软件的需求理解和模拟量信号的计算处理。

  1. 第一空:根据说明中的公式 Out_A1=In_A1+0.3×In_A2,假设 In_A1 为最大值 10V,In_A2 为最小值 0V,计算得到 Out_A1 = 10 + 0 = 10V。但考虑到信号范围限制,Out_A1 需要限幅在 [0.0V, 10.0V] 之间,因此实际值为 10V。填写表格时,由于需要考虑精度为 0.1V,所以填写为四舍五入后的值,即 10 × 精度 = 4.6V。所以第一空填写的答案是正确的。
  2. 第二空:同样使用公式 Out_A1=In_A1+0.3×In_A2 进行计算。假设 In_A1 为最小值 0V,In_A2 为最大值 10V,计算得到 Out_A1 = 0 + 3 = 3V。考虑到精度为 0.1V,需要进行四舍五入处理,得到结果为 7.3V。因此第二空的答案是正确的。
  3. 第三空:使用公式 Out_A1=In_A1+0.3×In_A2 计算得到的结果为 Out_A1 = 9.9 + 3 = 12.9。考虑到信号范围限制在 [0.0V, 10.0V] 之间,需要进行限幅处理,所以实际值应为限幅后的值,即限幅为最大值 10V。因此第三空的答案应填写限幅后的值,即填写为限幅后为 10.0V。由于原始计算值应为四舍五入后的值大于或等于最大值时才能直接填写最大值,因此原始计算值应为四舍五入后大于或等于的数值(本题中为四舍五入得到),与答案中的描述不符。因此第三空的答案存在错误描述的问题。正确答案应为限幅后为最大值的数值即限幅后为 10.0V。因此第三空的答案是错误的。正确填写应为限幅后为最大值的数值即限幅后为 10.0V(原始计算值应为四舍五入得到)。该题考查的是根据模拟量信号的计算处理以及精度要求对信号进行处理的测试思路的理解和应用能力。需要理解并正确应用信号的计算公式和精度要求来得出正确的结果并填写在表格中。同时需要注意在填写表格时需要考虑信号范围的限制和精度要求以及如何进行四舍五入和限幅处理等问题。因此本题考查的是对嵌入式刹车控制软件的需求理解和模拟量信号的计算处理以及测试思路的理解和应用能力。"}

喵呜刷题:让学习像火箭一样快速,快来微信扫码,体验免费刷题服务,开启你的学习加速器!

创作类型:
原创

本文链接:2014年11月软件评测师下午题答案及解析

版权声明:本站点所有文章除特别声明外,均采用 CC BY-NC-SA 4.0 许可协议。转载请注明文章出处。
分享文章
share