未来智讯 > 智能家居论文 > 基于智能家居系统可靠性测试分析

基于智能家居系统可靠性测试分析

发布时间:2018-07-01 01:08:00 文章来源:未来智讯    
    【关键词】智能家居 自动化测试 测试方案
    1 前言
    智能家居是由感知设备、通信网络、数据存储和处理、应用软件等集成的智能化的应用系统。主要功能特点是由智能手机或平板电脑中一个App软件控制所有家用设备或接收家用各种传感设备,可随时随地的对设备进行管理和访问,对不同设备的状态自动感知和互联互通控制,个人信息的云平台存储与智能设备互动等方式来逐步改变人们的日常学习和生活。因此,对于这样多层级、多设备系统中,通过开展智能家居系统测试,及时发现产品潜在的问题和缺陷,有助于改善和提升系统性能以及提高用户使用效果,实现产品质量、风险的可控制,保障智能家居系统安全可靠和高效的运行,推动产业快速健康发展,促进应用推广。
    2 智能家居自动化可靠测试概述
    2.1 自动化测试
    一般而言,自动化测试必须是通过使用脚本代码来执行应用程序。在这之中,通过自动化测试,运行的脚本是相同的,可以做到对智能家居系统进行重复测试,使得每次执行的测试具有一致性。
    对于智能家居来说,每一个功能都是一个业务操作的应用。在开展智能家居可靠性的测试中,通过相关的测试方法和测试工具,将执行模拟用户负载的情况下实现高密集度的可靠性测试。对于智能家居产品而言,为了确定和提高系统的稳定性,可靠性测试是可行的并且是重要的参考指标。因此,我们希望借助自动化测试手段,根据智能家居产品的功能需求来开展自动化测试,其主要目的是保证系统集成的质量,提高测试效率。
    2.2 可靠性指标
    在智能家居中为了提高产品运行的可靠性,确保用户体验。我们引入了系统端到端的功能可靠性测试―MTBF(Mean Time Between Failure,平均无故障时间)测试。MTBF的测试机理是基于自动化工具,将是反映产品稳定运行、用户体验的一个指标。
    对于评价可靠性基本特征的是平均无故障时间,其中时间是指所有被测设备的累计相关试验时间。各被测产品的相关时间,在被测产品上进行计时器记录,在第k次失效时的累计相关试验时间是所有计数时间总和。即:
    …………………………(1)
    式中:
    n―被测产品总数。
    tk,m―到第K次失效时,被测产品中第m号被测产品的相关试验时间。
    对智能家居软件可靠性测试中,在规定的条件下和规定的时间内,软件不引起系统故障的能力。软件可靠性不仅与软件的差错(缺陷)有关,而且与系统输入和系统输出有关。对与智能家居系统来说,存在故障包括:一是使用功能部件与其执行功能丧失;二是系统组成部分无法在规定限度内执行所需功能的能力,在到这种情况下就可能出现故障;三是软件未按设计需求执行,背离了执行功能状态,是软件故障。
    3 智能家居测试系统结构设计
    根据智能家居典型应用,把智能家居看成一个整体服务,即手机应用与传感端的各种设备互连控制。那么对其开展整个系统可靠性测试来说,网络层是起到一个数据“中转站”的作用,对产品用户来说,就是在应用端到传感端的端到端业务可靠性验证。如图1所示,在测试系统结构中,我们把手机与测试系统相连,实现对应用端的通信控制。对于传感端来说,各种设备形态不一,怎么接入测试系统是一个关键。因此,我们设计了一个物联网仿真测试仪,通过该硬件盒子实现与传感设备的物理硬件相连,通过测试系统控制物联网仿真测试仪,发出对传感端设备电信号激励或采集执行设备输出电信号,那么我们就可以实现对被测的智能家居系统进行量化控制,形成闭环测试判决。
    4 智能家居自动化测试
    4.1 测试环境搭建
    根据被测的智能家居产品,搭建测试系统环境,执行所需要的硬件设备、软件程序。该测试系统中包括测试IDE软件、上测试器代理和信号仿真测试仪三大部分,分别如下:
    (1)测试IDE软件。测试IDE(Integrated Development Environment,集成开发环境软件),通过编写测试脚本,驱动被测系统的业务运行。IDE是测试系统的中枢,负责协调其余各模块和接口,控制整个测试的正常运转,管理测试项。同时,它还具有脚本解释器的功能,按照测试语句进行函数调用,使其测试具体动作得以执行。
    (2)上测试器代理。安卓手机和通过USB线和PC机相连,在PC机上运行一个上测试器代理(Upper Testing Agent,UTA)Agent文件,测试IDE通过Agent下发测试命令给被测手机,被测手机响应Agent发送的相关相应报文,同时,执行相关动作。最后由IDE进行分析和判断,给出测试结果。通过工具的ADB(Android Debug Bridge,ADB),打开ADB命令符,键入adb devices 查询设备是否存在以及其SN号,其中SN号即为该设备在IDE工具中的标识,用以区分每个连接设备,如图2所示。
    (3)信号仿真测试仪
    对于智能家居传感端传感设备来说,需要模拟不同传感信号,以便使传感器产生报警信息,那么就需要一个信号模拟器,负责模拟输入传感元件发出的电信号。如果在传感端是受控设备来说,就需要采集受控设备收到控制命令后的执行动作,因此就需要一个信号采集器,负责采集识别受控节点接收到的控制信息;因此,通过我们开发的仿真测试仪,可以作为不同传感端信号的输入和输出,可以提供各种嵌入式接口,如IO接口、AD接口、DA接口、网口等各种接口,直接与被测设备相连。
         4.2 测试流程分析
    作为自动化测试系统,进行可重复性测试是关键。根据第三节提出的测试系统结构,实现在IDE中测试流程的模块化,如图3所示。在该流程中,描述了自动化测试过程中的关键设计流程方法。
    (1)对于智能家居每个测试用例来说,首先创建一个测试任务,在IDE中体现为类的方法。
    (2)IDE为该任务分配ID标识属性,等待任务运行。在完成创建任务后,导入测试Modules模版,生成通用的函数功能模块,这样在复用该功能时,直接通过目录引用后,可以方便的调用该接口函数,以提高脚本开发效率。
    (3)对接入IDE中的设备进行管理,建立每个被测设备与IDE的映射关系,管理被测设备。同时,通过数据驱动的方式,实现数据源与脚本框架分类。它具有的优点:在更改本功能中新的测试需求时,测试人员只需关心数据表的配置,通过测试框架把参数传递给脚本运行。
    (4)测试人员在IDE中直接编写或通过其它方式导入已经写好的脚本。可对测试输入、预期验证点、执行次数、测试日志等策略配置,形成一个测试用例的全部过程。
    (5)在执行测试脚本中,对不同任务的测试用例进入队列,按照测试策略执行关联的测试函数。并对测试反馈的结果与预期结果进行比对,判断测试结果。
    4.3 测试应用
    根据在测试系统中的典型结构,搭建了实际的智能家居测试验证场景,开展对接入的APP以及安防报警器、安防遥控器、智能开关、智能插座、电动窗帘等分别实现测试。经过初步统计,发现整个系统呈现出APP崩溃、控制执行设备无响应、丢包等问题。
    5 结束语
    智能家居的可靠性测试,可以发现并解决大量人工测试时无法发现的功能及性能问题。随着智能家居的大量发展、推广,智能家居系统可靠性越来越重要,传统的硬件测试方法无法满足测试需求,特别是对智能家居系统级的测试方法和工具缺失,难以进行系统级测试评估,已成为产品质量提升的瓶颈,严重影响了产业链集聚和发展。因此,开展智能家居的功能及可靠性测试势在必行。
    参考文献
    [1]童晓渝,房秉毅等.物联网智能家居发展分析[J].移动通信,2010(5):16-20.
    [2]孟平.多功能智能家居系统的设计与实现[D].哈尔滨理工大学,2014.
    [3]吕红海.基于Android的智能家居无线控制系统的设计与实现[D].电子科技大学,2012.
    [4]王军,孟凡鹏.基于关键字驱动的自动化测试研究与实现[J].计算机工程与设计,2012(9):3652-3656.
    [5]陈鹏.平均无故障时间(MTBF)的概述与应用[J].电子产品可靠性与环境试验,2012(5):272-276.
    作者单位
    中国信息通信研究院西部分院(重庆电信研究院) 重庆市 401336
转载请注明来源。原文地址:https://www.7428.cn/page/2018/0701/20776/
 与本篇相关的热门内容: