目前,很多高科技企业均涉及到嵌入式产品的研发质量的保证工作,如华为、迈瑞、海康威视、元征、比亚迪、大疆、大华科技等公司的产品,都是软件加硬件的开发模式, 嵌入式产品就是嵌入在硬件中的操作系统和开发工具件软件,它在产业中的关联关系体现为:芯片设计制造→嵌入式系统软件→嵌入式电子设备开发、制造。
嵌入式已经广泛应用于安防、医疗、工控、汽车电子、智能家居、物流等相关领域; 嵌入式系统因其低成本、体积小、低功耗、稳定性和实时性强等特点越来越被人们所应用。
嵌入式软件的分类:
- 嵌入式操作系统(Linux、Vxworks、WinCE、PalmOS、Symbian、Android、IOS等)
- 嵌入式支撑软件(数据库等)
- 嵌入式应用软件(仪器仪表、 IC卡、手机、MP3、GPS等)
由于嵌入式系统不同于单纯的软件产品,也不同于单纯的硬件产品, 它是软件和硬件相结合的产品形态,由于嵌入式系统自身特点,如:实时性、内存不丰富、I/O通道少、开发工具昂贵、与硬件紧密相关、CPU种类繁多,等等。嵌入式软件的开发和测试不同于桌面系统开发和测试, 是最难测试的一种软件。那究竟如何保证嵌入式产品的研发质量呢?根据共创力咨询对客户痛点的分析, 目前很多企业的质量保证活动还集中在研发后期,即系统测试阶段,往往带来许多质量的隐患,“产品的质量是设计出来的,不是测试出来的!” ,共创力建议,对于嵌入式产品质量的保证工作,需要从以下的几个方面进行考虑:
由于每个公司的嵌入式产品实现的功能都不太一样,嵌入式产品所用的操作系统也不相同,如华为的通信产品用的操作系统是Vxworks,手机的操作系统是Harmony,智能电视的操作系统是Android, 所以缺乏一些通用的自动化测试工具, 大部分的嵌入式功能测试还是依赖于手工测试或半自动化测试。共创力咨询认为, 嵌入式产品的研发质量保证工作主要从以下几个方面进行:测试、质量保证(QA)、评审、新物料认证、DFMEA(设计失效模式及影响分析五个维度, 其中,测试的活动是最复杂的, 也是最难以落地的。 下面根据这几件我们帮助客户进行嵌入式质量方面的培训和咨询工作,分享一下嵌入式测试的方法:
- 对产品进行硬件测试和软件单元测试。硬件测试主要包括PCB原理图审查、电路调试和信号完整性测试, 最好有专门的硬件测试工程师参与到产品测试需求分析的过程中,如果涉及到硬件的平台和模块,最好先保证平台和公共模块(CBB)的质量,才能进行产品集成的测试。软件的单元测试也是不可缺少的, 对于嵌入式软件可以进行静态代码审查和动态的功能逻辑的验证,只有对每个模块的质量有所保证,才能进行系统的集成, 产品质量做得比较好的公司,往往都投入了大量的单元测试的时间,这个工作一般是由开发人员自己完成。
- 对产品进行集成测试和系统测试。集成测试主要包括软件和硬件接口的测试和性能测试。集成测试比较偏向于灰盒测试,即既要进行白盒测试,又要进行黑盒测试, 集成测试一般由开发人员进行,在原型机交付之前,要进行一定比重的集成测试,对各模块之间的接口进行验证。 另外,系统测试也是一个非常重要的活动,系统测试的范围更大, 包括功能测试、性能测试、可靠性测试、EMC测试、环境试验测试等。
- 内存分析和性能测试。由于嵌入式系统均会使用到内存、硬盘等硬件设施,其中最容易出问题的是内存不足,因此要对内存的占用情况进行实时监控和分析。另一个方面,要对嵌入式系统进行性能测试,比如一个电话交换机,同时10万个人在线呼叫,接通电话,交换机的性能是否能达到要求, 如果是一个监控设备, 如果硬件存放录像达到最大值后,系统运行是否正常等。笔者曾帮助一个“深圳通”生产商做过调研,他们的性能主要是乘客在刷公交卡时的间隔时间和灵敏度,这就需要自己开发性能测试工具来进行验证,没有通用的测试工具。
- 模拟仿真测试。嵌入式系统的核心是需要一个“类生产环境”,指需要在确保无限接近真实的环境中稳定运行软件。然而,实际操作中存在诸多问题:硬件的开发周期过长、软件不稳定等。嵌入式仿真软件的出现解决了以上问题,该平台与真实环境足够接近,可以运行真实代码进行功能测试。
模拟硬件系统的仿真平台可将外部环境模拟和虚拟硬件系统的平台模型结合,方便开发人员将整个系统环境仿真成可以在任何服务器或者PC机上运行的软件工作。测试系统的可用性得到了提升,测试进度也得到了保障。目前共创力很多客户在硬件测试环节中使用了仿真平台。
- 可靠性测试。可靠性测试主要包括高低温,长时间和加速实验测试。 高加速寿命试验(Highly Accelerated Life Testing,简称HALT试验)是一种利用快速高、低温变换的震荡体系来揭示电子和机械装配件设计缺陷和不足的过程。
HALT(高加速寿命测试):Highly Accelerated Life Test是一种发现设计缺陷的工序,它通过设置逐级递增的加速环境应力,来加速暴露试验样品的缺陷和薄弱点,而后对暴露的缺陷和故障从设计、工艺和用料等诸方面进行分析和改进,从而达到提升可靠性的目的,最大的特点是设置高于样品设计运行限的环境应力,从而从暴露故障的时间大大短于正常可靠性应力条件下的所需时间。
HASS(高加速应力筛选):Highly Accelerated Stress Screen是产品通过HALT试验得出操作或破坏极限值后在生产线上做高加速应力筛选。要求100%的产品参加筛选。其目的是为了使得生产的产品不存在任何隐患的缺陷或者至少在产品还没有出厂前找到并解决这些缺陷,HASS就是通过加速应力以期在短时间内找到有缺陷的产品,缩短纠正措施的周期,并找到具有同样问题的产品。
HASA(高加速应力抽检筛选):Highly Accelerated Stress Audit是一种在产品批量生产阶段使用抽样理论的筛选试验方法。它可以防止有缺陷的产品交付到客户的手中。
HALT/HASS/HASA 是由美国军方所延伸出的设计质量验证与制造质量验证的试验方法,现已成为美国电子业界的标准产品验证方法,它将原需花费6 个月甚至1 年的新产品可靠性试验缩短至一周,且在这一周中所发现的产品问题几乎与客户应用后所发现的问题一致,故HALT/HASS/HASA 的试验方式已成为新产品上市前所必需通过的验证。在美国之外,许多国际的3C 电子产品大厂也都使用相同或类似的手法来提升产品质量。
因此,综上所述,嵌入式产品的研发质量仅仅依赖于系统测试是远远不够的,它还需要软件和硬件设计人员从自身的角度去做测试的验证工作, 另外, 嵌入系统的设计质量越高,它的产品质量就容易保证,如软件和硬件尽量解耦,也就是模块化。 如果缺乏研发设计人员的测试活动,作为黑盒测试人员,就应该尽可能地参与到产品需求的前端进行分析,多进行软硬件的集成测试, 来弥补研发设计质量保证活动的不足。
注:本文由共创力咨询资深测试专家George提供,转载请注明出处。
标签:产品,系统,研发,硬件,测试,软件,嵌入式 From: https://www.cnblogs.com/mikeyond/p/16915348.html