嵌入式软件测试(参考答案)
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
一、填空题:(10题,每题2分,共20分)1、嵌入式系统是计算机技术、通信技术、半导体技术、微电子技术、语音图像数据传输技术,甚至传感器等先进技术和具体应用对象相结合后的更新换代产品。
2、ARM 处理器当前主要有6个系列产品:ARM7、ARM9、ARM9E、
ARM10E SecurCore及最新的ARM11 系列。
3 、实时是嵌入式系统的主要特征, 根据截止时间的要求,可将实时分为硬实时和软实时。
4、嵌入式应用软件典型的开发方式是宿主机/ 目标机方式。
5、MISRA C已经被越来越多的企业接受,成为用于嵌入式系统的C语言标准, 特别是对安全性要求极高的嵌入式系统,其软件应完全符合MISRA标准。
6、插桩也称为打点,是在程序中插入额外的代码来获得程序在执行时有关行为信息的一种重要手段,属于动态测试的一种常用技术。
7、等价类划分的目的就是为了在有限的测试资源的情况下,用少量有代表性
的数据得到比较好的测试效果。
8、测试报告是把测试的过程和结果写成文档,并对发现的问题和缺陷进行分析,为纠正软件的存在的质量问题提供依据,同时为软件验收和交付打下基础。
9、TEmb作为一种全新的嵌入式软件结构化测试方法,覆盖了测试过程中的一些关键步骤,回答了“做什么、什么时候做、如何做、用什么方法做和谁去做”的问题。10、嵌入式软件测试自动化就是希望能够通过嵌入式软件测试自动化工具或其他的实现手段,按照测试人员预订的计划进行自动地嵌入式软件测试工
作。
二、选择题:(10题,每题2分,共20分)
1、嵌入式系统是集软硬件于一体的可独立工作的“器件”主,要包括
___ A___、__ B___、__C _ 、___D___。
A 嵌入式微处理器
B 外围硬件设备
C 嵌入式操作系统
D 应用软件系统
2、UML(Unified Modeling Language可以用于软件开发的全过程,对于不同的用户,提供了不同的使用UML的方法。UML包括A、___B___、__C ______ 。
A图
B 事物
C 关系
D 用例
3、嵌入式系统开发过程中使用的语言种类很多,但仅有少数几种语言得到了
比较广泛的应用,主要为___A___、___ B__、___C__。
A Ada
B C/C++
C Modula -2
D Java
4、嵌入式开发所面临的问题主要表现在以下几个方面:___A ___ 、
___ B ____ 、___ C ____ 。
A 涉及多种CPU 和多种OS。
B 开发工具种类繁多。
C 对目标系统的观察和控制。
D 对宿主机的观察和控制
5、嵌入式软件由于自身的特点,决定了不同的嵌入式软件必须有不同的测试方法。按软件测试技术分为两种:即_____ A ____ 和 ___ B___ 。
A 黑盒测试
B 白盒测试
C 灰盒测试
D 功能测试
6、民用航空三大开发/ 测试的方法和技术标准分别是:_A__、_B__、__C_
A DO-178
B 标准
B ARP4754标准
C DO-254标准
D MISRA标准
7、程序插桩有___A___和___B___两种实现方式。
A 目标代码插桩
B 源代码插桩
C 软件插桩
D 硬件插桩
8、等价类划分可有两种不同的情况:___A___和___B __ 。
A 有效等价类
B 无效等价类
C 代表值
D 测试数据
9、嵌入式C代码主要的安全隐患集中在: A、____________ B ___ 、
___C___、___D___。
A内存访问
B 指针引用
C 缓存区溢出
D 异常控制
10、嵌入式软件测试自动化模型按照功能可分为三类:__A__、___B__、
___C___。
A 测试驱动自动化
B 测试数据生成自动化
C 测试报告自动化
D 测试过程自动化
三、简答题:(4题,每题10分,共40分)
1、嵌入式操作系统和通用操作系统相比,有什么特点?根据应用场合,嵌入式操作系统可以分为哪两大类?请分别举出典型的例子。
答:与通用操作系统相比较,嵌入式操作系统在系统实时高效性、硬件的依赖
性、软件固态化以及应用的专用性等方面具有较为突出的特点。
根据应用场合,嵌入式操作系统可以分为两大类:一类是面向消费类电子产品的非实时系统。如:Windows CE另一类是面向控制、通信、医疗等领域的实时操作系统。如:VxWorks.
2、简单叙述什么是嵌入式软件白盒测试?什么是黑盒测试?
答: “白盒”测试方法主要是通过考查程序的结构和逻辑,验证所构造的程序是否符合设计要求。嵌入式软件白盒测试要求覆盖软件代码的全部语句和所有分支。对可靠性要求极高的关键软件,必须要做到修正条件/判定覆盖。“黑盒”测试又被称为功能测试、数据驱动测试或基于规格说明的测试,它实际上是站在最终用户的立场,检验输入输出信息及系统性能指标是否符合规格说明书中有关功能需求以及性能需求的规定。嵌入式软件“黑盒测试”不仅要检查软件工作过程,也要检查软件失效过程。
3、简单叙述一般软件测试过程有哪四种模型?嵌入式软件测试过程有哪三种模型?
答:一般软件测试过程有四种模型:V模型、W模型、H模型、X模型,嵌入式软件测试过程有三种模型:改进的V模型、多V模型、蝴蝶模型。
4 什么是嵌入式软件可靠性测试?提高嵌入式软件可靠性的方法和途径有哪些?答:软件可靠性是程序在规定的条件下和规定的时间内,成功完成其规定功能的能力。嵌入式软件的可靠性是在普通软件可靠性的基础上又被描述为:在T=0时系统正常的条件下,系统在时间区间内[0, t]内正常运行的概率。提高嵌入式软件可靠性的方法和途径有:严格的质量管理、重视软件工程方法的使用、采用软件容错设计、软件的重用、加强软件测试。
四、问答题:(20分)
1、结合嵌入式系统的特点,谈谈为什么嵌入式软件是各类软件中最难测试的一种?
答:要点:
•嵌入式软件涉及的计算机外部设备几乎全是专用的。
•嵌入式软件的运行平台——嵌入式计算机系统可能由于没有通常的外围设备而导致很难在测试
过程中进行检查和观测和观察。•大部分的嵌入式应用是实时的,而测试方法和测试环境的不同对嵌入式应用的实时性影响是有较
大差别的。
•嵌入式应用有许多是要求交互的,这对测试也提出了更高的要求。
总之,嵌入式软件因这些原因而变得测试难度加大。当然,测试技术、测试工具的不足也是嵌入式软件测试困难的重要原因之一。
一、填空题:(10题,每题2分,共20分)
1、硬件是支撑,软件是灵魂,几乎所有的嵌入式产品中都需要嵌入式软件来提