嵌入式通信软件可靠性测试.ppt_第1页
嵌入式通信软件可靠性测试.ppt_第2页
嵌入式通信软件可靠性测试.ppt_第3页
嵌入式通信软件可靠性测试.ppt_第4页
嵌入式通信软件可靠性测试.ppt_第5页
已阅读5页,还剩25页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、2020/9/24,1,专业化、规范化、标准化、电子化,可靠性测试,编制人:彭远大 版本:v1.0,有计划、有总结、有记录、有审核;,2020/9/24,2,专业化、规范化、标准化、电子化,定位与目标,适用于测试工程师 学习后,掌握嵌入式通信软件可靠信测试的基础知识,能够进行可靠信测试。 自学建议:tcp/ip协议详解 卷1 嵌入式软件测试 可靠性测试,2020/9/24,3,专业化、规范化、标准化、电子化,5,4,3,2,1,目录,嵌入式通信软件可靠性测试的目的,什么是嵌入式通信软件的可靠性测试,嵌入式通信软件可靠性测试的特点,嵌入式通信软件可靠信的几大要素,嵌入式通信软件可靠性测试的注意事

2、项,6,嵌入式通信软件可靠信测试过程,8,7,如何测试嵌入式通信产品的可靠性,抛砖引玉 实例介绍,2020/9/24,4,专业化、规范化、标准化、电子化,一 嵌入式通信软件可靠性测试的目的,软件可靠性测试的主要目的有: 一:通过在有代表性的使用环境中运行软件,以证实软件需求是否正确实现。 二:通过软件可靠性测试找出所有对软件可靠性影响的错误,从而及时修改软件错误,提高软件质量。 嵌入式通信软件测试的主要目的是: 通过在有代表性的使用环境中运行软件,执行可靠性测试找出对通信软件功能,性能(对数据包执行转发, 阻止,延迟, 以及修改等)可靠性影响的错误,从而及时修改软件错误,提高软件质量。,202

3、0/9/24,5,专业化、规范化、标准化、电子化,二 什么是嵌入式通信软件的可靠性测试,嵌入式通信软件的可靠性测试定义: 是将开发的嵌入式通信系统(包括操作系统,协议践,驱动程序和应用软件)、硬件系统和其它相关因素(如人员的操作、数据的获取等)综合起来,对整个产品进行的可靠信测试。 (1)嵌入式通信软件可靠性定义:在有代表性的使用环境条件下(包括软硬件 ,网络, 以及操作 ,输入等),在规定时间内,嵌入式通信系统不引起系统失效的概率。 (2)嵌入式通信软件可靠性估计:应用统计技术处理在系统测试和运行期间采集、观察到的失效数据,以评估该嵌入式通信系统的可靠性。,2020/9/24,6,专业化、规

4、范化、标准化、电子化,三 嵌入式通信软件可靠性测试的特点,软件可靠性测试不同于硬件可靠性测试,这主要是因为二者失效的原因不同。 硬件失效:一般是由于元器件的老化引起的,因此硬件可靠性测试强调随机选取多个相同的产品,统计它们的正常运行时间。正常运行的平均时间越长,则硬件就越可靠。 软件失效:是由设计缺陷造成的,软件的输入决定是否会遇到软件内部存在的故障。软件可靠性测试强调按实际使用的概率分布随机选择输入,并强调测试需求的覆盖面。软件可靠性测试强调测试输入与典型使用环境输入统计特性的一致,强调对功能、输入、数据域及其相关概率的先期识别。测试实例的采样策略也不同,软件可靠性测试必须按照使用的概率分布

5、随机地选择测试实例,这样才能得到比较准确的可靠性估计,也有利于找出对软件可靠性影响较大的故障此外,软件可靠性测试过程中还要求比较准确地记录软件的运行时间,对嵌入式通信软件,进行可靠性测试时需要有多种测试环境,以进行针对性的测试。,软硬件可靠性测试差异:,2020/9/24,7,专业化、规范化、标准化、电子化,三 嵌入式通信软件可靠性测试的特点,嵌入式通信软件不同于一般软件的区别在于: 1:运行在特定的硬件上,与硬件联系紧密。 2:功能主要为对数据进行( 转发,阻止,延迟 ,修改)等动作。 3:不同模块之间有很大相互关联性和影响性。 4:嵌入式产品特点(软硬件一体化)包括硬件、boot、驱动程序

6、、操作系统、协议践、应用系统。有的还需要通用PC应用软件支持。因此,嵌入式通信软件系统的可靠性测试要考虑与硬件兼容性、boot兼容性、驱动程序稳定性、操作系统健壮性、协议践稳定性 兼容性、与相应PC应用软件的兼容性,2020/9/24,8,专业化、规范化、标准化、电子化,嵌入式通信软件系统可靠性可定义为:在规定时间内,在规定条件下,完成规定的功能,不引起系统失效的概率. 1.规定的时间 软件可靠性只是体现在其运行阶段,所以将“运行时间”作为“规定的时间”的度量。“运行时间”包括软件系统运行后工作与挂起(开启但空闲)的累计时间。由于软件运行的环境与程序路径选取的随机性,软件的失效为随机事件,所以

7、运行时间属于随机变量。 2.规定的环境条件 环境条件指软件的运行环境。它涉及软件系统运行时所需的各种支持要素,如硬件、操作系统、网络环境、其它支持软件、转发数据、输入数据格式和范围以及操作规程等。不同的环境条件下软件的可靠性是不同的。具体地说,规定的环境条件主要是描述软件系统运行时的外部环境条件以及对输入数据的要求,并假定其它一切因素都是理想的。 3.规定的功能 软件可靠性还与规定的任务和功能有关。由于要完成的任务不同,软件的运行剖面会有所区别,则调用的子模块就不同(即程序路径选择不同),其可靠性也就可能不同。所以要准确度量软件系统的可靠性必须首先明确它的任务和功能。判断软件是否失效的判据有:

8、系统死机、系统无法启动、不能输入输出显示记录、计算数据有误、决策不合理、影响其他模块或系统以及削弱或使软件功能丧失的事件或状态。,四 嵌入式通信软件可靠信的几大要素,2020/9/24,9,专业化、规范化、标准化、电子化,五 嵌入式通信软件可靠性测试的注意事项,一:功能识别 功能识别的目标: 识别所有被测功能以及执行这些功能所需的相关输入,识别每一个使用需求及其相关输入的概率分布,需要分析软件功能的所有集合,这些功能之间全部的约束条件,功能之间的独立性、相互关系和相互影响,还需分析系统的不同运行模式、失效发生时系统重构策略等对软件运行方式有较大影响的因素。 二:定义失效等级 1.对发生概率小但

9、失效后危害严重的功能需求的识别。 2.对可不查找失效原因、并不做统计的功能需求的识别。,2020/9/24,10,专业化、规范化、标准化、电子化,五 嵌入式通信软件可靠性测试的注意事项,三:可靠性测试覆盖 输入覆盖: 1.输入域覆盖,即所有被测输入值域的发生概率之和必须大于软件可靠度的要求。 2.重要输入变量值的覆盖。 3.相关输入变量可能组合的覆盖,以确保相关输入变量的相互影响不会导致 软件失效。 4.设计输入空间与实际输入空间之间区域的覆盖,即不合法输入域的覆盖。 5.各种使用功能的覆盖。 环境覆盖: 指测试时必须覆盖所有可能影响程序运行方式的条件(软硬件 网络 操作)。,2020/9/2

10、4,11,专业化、规范化、标准化、电子化,六 嵌入式通信软件可靠信测试过程,嵌入式软件可靠性测试分为四个阶段: 1. 制订测试方案 2. 制订测试计划 3. 编写测试用例 4. 执行测试 5. 测试数据收集及分析 6. 可靠性评估,2020/9/24,12,专业化、规范化、标准化、电子化,七 嵌入式通信软件可靠信测试难点,一:测试嵌入式软件功能依赖不需编码的硬件功能,快速定位软硬件错误困难。 二:由于嵌入式通信软件主要处理转发数据(输入部分),强壮性测试很难实现(依据软件设计覆盖尽可能多的数据类型)。 三:由于通信设备要尽量对用户透明化,要求适应非常多的不同种类的系统,应用,设计交叉测试平台的

11、测试用例困难。 四:基于消息系统测试的复杂性,包括线程、任务、子系统之间的交互,并发、容错和对时间的要求; 五:性能测试、确定性能瓶颈困难。 六:实施测试自动化技术困难。,2020/9/24,13,专业化、规范化、标准化、电子化,八 如何进行嵌入式通信产品的可靠性测试,一.制定测试方案和策略: 本阶段的目标是识别软件功能需求,触发该功能的输入和对应的数据域,确定相关的概率分布及需强化测试的功能。 1.分析功能需求 分析各种功能需求,识别触发该功能的输入及相关的数据域(包括合法与不合法的两部分)。分析时要注意下述问题: 该软件是否存在不同的运行模式?如果存在,那么应列出所有的系统运行模式。 是否

12、存在影响程序运行方式的外部条件?如果存在,那么有多少?它们的影响程度如何 各种功能需求之间是相互独立的还是相关的?如果相关,是密切相关还是部分相关?如果两种功能密切相关,那么可将两种功能合并为一种功能。如果功能之间为部分相关,则需列出相应输入变量的合法组合。 可参考国家军用软件标准,2020/9/24,14,专业化、规范化、标准化、电子化,八 如何进行嵌入式通信产品的可靠性测试,二.制定测试计划: 根据测试方案评估测试用时,制定相应的测试计划,包括软件 硬件 测试设备 网络资源配备,任务分配(测试脚本,测试用例编写及评审,执行测试),报告输出及可靠性评估。,2020/9/24,15,专业化、规

13、范化、标准化、电子化,八 如何进行嵌入式通信产品的可靠性测试,三.设计与编写测试用例: 测试用例的设计与编写质量是可靠性测试能否取得效果的关键. 设计测试用例就是根据测试方案,测试计划,测试策略和软件设计说明,针对特定功能或组合功能设计测试方案,并编写成文档。测试用例的选择既要有一般情况,也应有极限情况以及最大和最小的边界值情况。因为测试的目的是暴露应用软件中隐藏的缺陷,所以在设计时要尽可能考虑到软件运行的各种条件分支和逻辑结构,执行顺序,模块间的联系,数据包的类型多样性,操作的多样性,结合复杂的运行环境,在所有可能的输入条件和输出条件中确定测试数据,来检查应用软件是否都能产生正确的输出。,2

14、020/9/24,16,专业化、规范化、标准化、电子化,八 如何进行嵌入式通信产品的可靠性测试,四.执行测试: 需注意的是被测软件的测试环境(包括软硬件环境和网络环境,设备物理环境)应尽可能模拟出实际使用环境,测试时按测试计划和顺序对每一个测试实例进行测试,判断软件输出是否符合预期结果。测试时应记录测试结果、运行时间和判断结果。如果软件失效,那么还应记录失效现象和时间。在测试中,可以考虑进行“强化输入”,即输入比正常输入更恶劣(合理程度的恶劣)的输入。如果软件在强化输入下可靠,只能说明比正规输入下可靠得多。为了获得更多的可靠性数据,应该采用多台计算机同时运行软件,以增加累计运行时间。,2020

15、/9/24,17,专业化、规范化、标准化、电子化,五.数据收集及失效分析: 软件可靠性数据是可靠性评估的基础。应该建立软件错误报告、分析与纠正措施系统。按照相关标准的要求,制定和实施软件错误报告和可靠性数据收集、保存、分析和处理的规程,完整、准确地记录软件测试阶段的软件错误报告和收集可靠性数据。 用时间定义的软件可靠性数据可以分为四类:1、失效时间数据,记录发生一次失效所累积经历的时间;2、失效间隔时间数据,记录本次失效与上一次失效间的间隔时间;3、分组数据,记录某个时间区内发生了多少次失效;4、分组时间内的累积失效数,记录某个区间内的累积失效数。这四类数据可以互相转化。每个测试记录必须包含充

16、分的信息,包括: a.测试时间; b.含有测试用例的测试计划或测试说明; c.所有与测试有关的测试结果,包括所有测试时发生的故障; d.参与测试的个人身份。 5 、编写测试报告,八 如何进行嵌入式通信产品的可靠性测试,2020/9/24,18,专业化、规范化、标准化、电子化,测试活动结束后必须编写软件可靠性测试报告,对测试项及测试结果在测试报告中加以总结归纳。编写时可以参考GJB 438A-97中提供的软件测试报告格式,并应根据情况进行剪裁。测试报告应具备下列内容: a.产品标识; b.使用的配置(硬件和软件); c.使用的文档; d.产品说明、用户文档、程序和数据的测试结果; e.与需求不相

17、符的项的列表; f.测试的最终日期。,八 如何进行嵌入式通信产品的可靠性测试,2020/9/24,19,专业化、规范化、标准化、电子化,六.可靠性评估: ISO9000国示质量标准(ISO/IEC 9126-1991)规定,软件产品的可靠性含义是:在规定的一段时间和条件下,软件能维持其性能水平的能力有关的一组属性,成熟性、容错性、易恢复 性三个基本子特性来度量,一般采取以下简单有效的评估方法 (1)成熟性度量 错误发现率DDP(Defect Detection Percentage)。在测试中查找出来的错误越多,实际应用中出错的机会就越小,软件也就越成熟。 DDP=测试发现的错误数量/已知的全

18、部错误数量 已知的全部错误数量是测试已发现的错误数量加上可能会发现的错误数量之和。 测试覆盖率度量。测试的覆盖率,可以用测试项目的数量,内容和数据量进行度量。测试的覆盖率,可以根据表2所示在测试指标进行评价。通过检查这些指标达到的程度,就可以度量出测试内容的覆盖程度 成熟性测试方法: 测试其软件本身出错引起的频度。 测试由意外事故出错引起的频度。 测试由其它原因出错引起的频度。,八 如何进行嵌入式通信产品的可靠性测试,2020/9/24,20,专业化、规范化、标准化、电子化,(2)容错性评估 容错性评估分为控制容错性评估、数据容错性评估、硬件故障恢复容错性评估: 容错性=以下各条款评分之和条款

19、数 1.控制容错性度量 对并发处理的控制能力; 错误的可修正性和处理可继续进行能力。 2.数据容错性度量 非法输入数据的容错; 对相互冲突的要求和非法组合容错; 输出数据是否合理容错。 3.硬件故障中恢复容错性度量 4.故障后恢复能力容错,八 如何进行嵌入式通信产品的可靠性测试,2020/9/24,21,专业化、规范化、标准化、电子化,(3)易恢复性度量 与易恢复性紧密相关的测试是强度测试和健壮测试。强度测试又称为力度测或极限测试,主要测试系统对空间强度和时间强度的容忍极限;健壮测试又称异常测试,是很重要的可靠性测试项目。通过易恢复性测试,一方面使系统具有异常情况的抵抗能力,另一方面使系统测试

20、质量可控制。 易恢复性=以下各条款评分之和条款数 空间强度可恢复;时间强度可恢复;数据强度可恢复;异常通信可恢复;数据破坏可恢复;异常开关机可恢复; 系统的程序及数据是否有足够牢靠的备份措施? 系统遭破坏后是否具有重新恢复正常工作的能力? 对系统故障是否自动检测和诊断的功能? 故障发生时,是否能对操作人员发出完整的提示信息和指示处理方法能力? 是否具有自动隔离局部故障,进行系统重组和降级使用,以使系统不中断运行的紧 急措施? 系统局部故障,可否进行占线维护,而不中断系统的运行? 在异常情况时是否按系统的分辨率,记 录了故障前后的状态,搜集了分析信息?,八 如何进行嵌入式通信产品的可靠性测试,2

21、020/9/24,22,专业化、规范化、标准化、电子化,(4)测试可信度评估 测试可信度是对测试质量的有效评估,是保证质量的必要步骤。目前虽然很难有量化的指标,但我们采取积分的方式显示可信度。例如,请4个人员(甲、乙、丙、丁)对系统5个功能打一个从0(不信任)到10(完全信任)之间的分数,那么,可信度度量可以用表3进行计算。,八 如何进行嵌入式通信产品的可靠性测试,目前我们最需要加强的是: 成熟性测试 容错性测试 易恢复性测试,2020/9/24,23,专业化、规范化、标准化、电子化,一.制定测试方案 1.需求分析: 合法需求: 智能负载均衡: 带宽叠加(主要测试带宽叠加的效果,以源IP地址目

22、的IP地址为选路条件) 不导致各种应用程序掉线(加强测试力度,尽量多的模拟常用网络应用) 按比例负载均衡: 各WAN口是否能够按照定义的比例分配流量 自定义策略路由: 内网数据包是否能够按照规定的路径出去 电信联通智能选路: 目的为电信的IP走电信线路,目的为联通的IP走联通线路,如果有多条属于同一运营商的线路,则在属于同一运营商的线路中进行负载均衡 DNS代理负载均衡: WAN口获取的不同的DNS,在客户端请求DNS查询时,DNS代理在不同的DNS之间轮询,以达到DNS查询负载均衡。 Web输入和配置: 正确的web输入和配置是否能够生效,九 实例 多WAN负载均衡模块可靠性测试,2020/

23、9/24,24,专业化、规范化、标准化、电子化,不合法需求: Wan口线路逻辑链路不通 Wan口线路逻辑链路不稳定 Wan口线路物理链路不通 Wan口线路物理链路不稳定 Wan口线路前端网络不通 Wan口线路前端网络不稳定 Wan口广播风暴 自定义策略路由与按比例负载均衡矛盾 Wan口速率定义错误 电信 联通线路配置错误(电信配成联通 联通配成电信) 错误的web输入,九 实例 多WAN负载均衡模块可靠性测试,2020/9/24,25,专业化、规范化、标准化、电子化,软件不同的运行模式: 一. 线路条数不同: 1条 2条 3条 4条 二.线路运营商及组合不同: 电信 电信 电信 电信 电信 电信 电信 其他 联通 联通 联通 联通 电信 电信 电信 联通 其他 其他 其他 其他 电信 电信 其他 其他 电信 其他 其他 其他 联通 其他 其他 其他 电信 联通 联通 联通 联通 联通 其他 其他 电信 电信 联通 联通 联通 联通 联通 其他 三.线路接入方式不同: PPPoE 静态IP DHCP,九 实例,2020/9/24,26,专业化、规范化、标准化、电子化,软件容错能力: 一. 配置容错: web配置不合法输入(如IP地址 MAC地址 各种配置分隔符) 配置之间

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论