CN109491258B - 一种智能家居系统的回归测试系统 - Google Patents
一种智能家居系统的回归测试系统 Download PDFInfo
- Publication number
- CN109491258B CN109491258B CN201811325010.7A CN201811325010A CN109491258B CN 109491258 B CN109491258 B CN 109491258B CN 201811325010 A CN201811325010 A CN 201811325010A CN 109491258 B CN109491258 B CN 109491258B
- Authority
- CN
- China
- Prior art keywords
- test
- intelligent
- data
- regression
- information
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
- 238000012360 testing method Methods 0.000 title claims abstract description 204
- 238000010276 construction Methods 0.000 claims abstract description 10
- 230000005540 biological transmission Effects 0.000 claims abstract description 3
- 230000006870 function Effects 0.000 claims description 27
- 238000000034 method Methods 0.000 claims description 26
- 238000007726 management method Methods 0.000 claims description 25
- 238000004422 calculation algorithm Methods 0.000 claims description 19
- 238000005516 engineering process Methods 0.000 claims description 11
- 230000008859 change Effects 0.000 claims description 10
- 238000006243 chemical reaction Methods 0.000 claims description 8
- 230000003993 interaction Effects 0.000 claims description 8
- 238000012795 verification Methods 0.000 claims description 7
- 238000012549 training Methods 0.000 claims description 6
- 238000005406 washing Methods 0.000 claims description 6
- 230000009471 action Effects 0.000 claims description 5
- 238000004458 analytical method Methods 0.000 claims description 5
- 230000010354 integration Effects 0.000 claims description 5
- 238000007781 pre-processing Methods 0.000 claims description 5
- 235000018185 Betula X alpestris Nutrition 0.000 claims description 4
- 235000018212 Betula X uliginosa Nutrition 0.000 claims description 4
- 238000004140 cleaning Methods 0.000 claims description 4
- 230000000694 effects Effects 0.000 claims description 4
- 230000004044 response Effects 0.000 claims description 4
- 238000012790 confirmation Methods 0.000 claims description 3
- 238000010606 normalization Methods 0.000 claims description 3
- 230000009467 reduction Effects 0.000 claims description 3
- 230000007474 system interaction Effects 0.000 claims description 3
- 230000002452 interceptive effect Effects 0.000 claims description 2
- 238000002372 labelling Methods 0.000 claims description 2
- 238000011022 operating instruction Methods 0.000 claims description 2
- 238000012545 processing Methods 0.000 claims description 2
- 230000008901 benefit Effects 0.000 abstract description 2
- 238000012986 modification Methods 0.000 description 7
- 230000004048 modification Effects 0.000 description 7
- 238000011161 development Methods 0.000 description 5
- 238000009826 distribution Methods 0.000 description 5
- 230000008569 process Effects 0.000 description 5
- 230000007547 defect Effects 0.000 description 4
- 238000013461 design Methods 0.000 description 3
- 238000010801 machine learning Methods 0.000 description 3
- 238000013522 software testing Methods 0.000 description 3
- 238000010521 absorption reaction Methods 0.000 description 2
- 238000007635 classification algorithm Methods 0.000 description 2
- 238000004891 communication Methods 0.000 description 2
- 230000002068 genetic effect Effects 0.000 description 2
- 238000010438 heat treatment Methods 0.000 description 2
- 238000004088 simulation Methods 0.000 description 2
- 238000003860 storage Methods 0.000 description 2
- 241000208306 Apium Species 0.000 description 1
- 241000486463 Eugraphe sigma Species 0.000 description 1
- VYPSYNLAJGMNEJ-UHFFFAOYSA-N Silicium dioxide Chemical compound O=[Si]=O VYPSYNLAJGMNEJ-UHFFFAOYSA-N 0.000 description 1
- 238000004378 air conditioning Methods 0.000 description 1
- 238000013459 approach Methods 0.000 description 1
- 238000013473 artificial intelligence Methods 0.000 description 1
- 238000013142 basic testing Methods 0.000 description 1
- 230000009286 beneficial effect Effects 0.000 description 1
- 238000004364 calculation method Methods 0.000 description 1
- 238000007621 cluster analysis Methods 0.000 description 1
- 230000001010 compromised effect Effects 0.000 description 1
- 239000000470 constituent Substances 0.000 description 1
- 238000013501 data transformation Methods 0.000 description 1
- 238000003066 decision tree Methods 0.000 description 1
- 238000005286 illumination Methods 0.000 description 1
- 238000002360 preparation method Methods 0.000 description 1
- 239000000344 soap Substances 0.000 description 1
- 238000000638 solvent extraction Methods 0.000 description 1
- 230000009897 systematic effect Effects 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G05—CONTROLLING; REGULATING
- G05B—CONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
- G05B15/00—Systems controlled by a computer
- G05B15/02—Systems controlled by a computer electric
-
- G—PHYSICS
- G05—CONTROLLING; REGULATING
- G05B—CONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
- G05B19/00—Programme-control systems
- G05B19/02—Programme-control systems electric
- G05B19/418—Total factory control, i.e. centrally controlling a plurality of machines, e.g. direct or distributed numerical control [DNC], flexible manufacturing systems [FMS], integrated manufacturing systems [IMS] or computer integrated manufacturing [CIM]
-
- G—PHYSICS
- G05—CONTROLLING; REGULATING
- G05B—CONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
- G05B2219/00—Program-control systems
- G05B2219/20—Pc systems
- G05B2219/26—Pc applications
- G05B2219/2642—Domotique, domestic, home control, automation, smart house
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02P—CLIMATE CHANGE MITIGATION TECHNOLOGIES IN THE PRODUCTION OR PROCESSING OF GOODS
- Y02P90/00—Enabling technologies with a potential contribution to greenhouse gas [GHG] emissions mitigation
- Y02P90/02—Total factory control, e.g. smart factories, flexible manufacturing systems [FMS] or integrated manufacturing systems [IMS]
Landscapes
- Engineering & Computer Science (AREA)
- General Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Automation & Control Theory (AREA)
- Manufacturing & Machinery (AREA)
- Quality & Reliability (AREA)
- Stored Programmes (AREA)
Abstract
本发明公开了一种智能家居系统的回归测试系统,包括测试接口模块、操作信息管理模块、测试数据构造模块和测试管理模块4个模块;待测系统是测试对象,通过网络与待测系统的智能终端进行数据传输与控制,实现回归测试。本发明的有益效果是方便、快捷、有效地选择回归测试数据、产生回归测试数据并且执行回归测试。
Description
技术领域
本发明属于物联网技术和智能系统领域,涉及一种智能家居系统的回归测试系统。
背景技术
随着互联网、传感网以及人工智能技术的快速发展,各种智能家电、智能家具与智能手机构成的智能家居系统及其应用的普及,为了尽快把产品及其应用投放市场、占领市场,软件开发者大多采取了增量迭代、快速部署的开发方式,即设计、实现系统的架构和主要功能、部署上线,在系统应用的同时,继续不断地优化、扩展、修改软件,然后定期在线更新软件。在不断创新各种应用功能、开发智能家居各种产品的同时,提高用户体验的满意度、提升系统的质量成为各个家居系统及其组成产品企业争夺市场的关键因素。软件测试是保障软件产品和服务质量的一个重要的、不可或缺的手段。基础的智能家电产品包括智能电视、智能冰箱、智能洗衣机、智能空调、智能微波炉以及智能电饭煲、智能灯光等智能家电、家居设备(简称智能终端、智能产品)以及家庭网络、传感器等其它产品,通过智能家庭网关等设备连接起来,形成一套智能家居系统。组成智能家居系统的各种产品通过网络控制器(遥控器)人工控制和管理,也可以经由智能控制中心系统,实现智能化、自动化的管理和控制。例如智能电视的基本控制和管理包括模拟遥控器(应用场景、事件)、频道选择、节目管理、屏幕显示、电源管理、时间管理、输入管理、内容管理、多媒体管理、系统设置等。
智能家居系统中的各种智能终端具有不同的应用(功能),需要在优化、扩展、更改产品之后,快速验证每个智能终端及整个系统,特别是要尽可能全面地测试,确保单个智能终端和整个系统的功能和可用性。在软件测试体系中,回归测试是指修改了旧代码后,重新进行测试以确认修改没有引入新的错误或导致其他代码产生错误。在软件生命周期中的任何一个阶段,只要软件发生了改变,就可能给该软件带来问题。因此,每当软件发生变化时,就必须重新测试现有的功能,以便确定修改是否达到了预期的目的,检查修改是否损害了原有的正常功能。同时,还需要补充新的测试来测试新的或被修改了的功能。现代软件开发基本上都是渐进和增量迭代的方式,如DevOps(持续开发、持续集成、持续交付),新版本的连续发布使回归测试更加频繁。因此,如何面对不同家居、家电组成的智能家居系统的变化,设计、选择回归测试数据,执行回归测试,减少回归测试成本,提高回归测试效率,具有十分重要的意义。本发明就是针对智能家居系统及及其智能终端中软件持续更新的回归测试,提出一种回归测试方法和系统。通过搜集智能家居系统及其智能产品日常使用中产生的大量信息,包括交互式用户操作和系统的自动化控制指令,将其转储和规范化,运用智能算法吸取出对软件的基本操作和有效的操作序列(微服务)作为基础测试用例库,然后经过智能化遴选和生成技术,快速地从大量实用信息中构造处有效的回归测试数据集合,结合自动化测试基础框架,对智能家居系统及智能家居产品实现快速、有效的回归测试,保证系统和产品为用户提供持续的、高质量的服务。
发明内容
本发明的目的在于提供一种智能家居系统的回归测试系统,本发明的有益效果是方便、快捷、有效地选择回归测试数据、产生回归测试数据并且执行回归测试。
本发明所采用的技术方案是包括测试接口模块、操作信息管理模块、测试数据构造模块和测试管理模块4个模块;待测系统是测试对象,通过网络与待测系统的智能终端进行数据传输与控制,实现回归测试。
进一步,待测系统包括智能电视、智能冰箱、智能洗衣机、智能空调、智能微波炉、智能窗帘、智能照明设备。
进一步,测试接口模块是与待测智能设备的接口,是在普通智能家居网关基本功能上,增加归回测试需要的功能,该模块作用是通过它实现系统的信息采集、信息输入、信息输出、集中控制,包括:1)接受用户的操控各种智能家电设备的指令,2)把用户操控指令以信号形式发送到相应的智能家电设备,3)接收各种智能家电设备传送的信号并存储起来,4)根据用户设置的参数、要求以及设备的状态,编制指令程序,然后发送给相应的设备,5)运行日志记录,包括从用户/控制中心接收、发送的指令,设备的相应和运行结果,6)按照系统设置或用户请求,发送运行日志记录,7)重置设备参数,增加、更改系统中的设备。
进一步,操作信息管理模块是从本发明的测试接口采集用户与智能家居系统及其智能终端的交互命令、参数设置以及获取的状态、事件、消息、信号等信息,进行吸取、转换、归一、分类等处理,以便用以回归测试,包括:
1)从测试接口模块采集系统交互命令及响应信息,2)把这些信息依据终端类型、信息类型进行初步分类和标注,3)按照智能家居系统的操作要求,对信息进行格式转换、数据清洗、数据集成、数据归约、数据变换等数据预处理;4)基本操作识别,运用编译技术的语法分析方法,识别出每个操作信息的基本操作,记录基本操作的参数及数值,统计基本操作的使用次数,然后存入基本操作库;5)操作序列识别器及识别,定义一个基本操作bop是应用程序中实体的一个函数或者对象的一个方法,一个对象的所有基本操作构成了该对象的基本操作集,采用机器学习的聚类算法,从用户交互的大量信息中挑选两个数据集:训练集t_set和验证集v_set,动态地建立一个操作序列分类器OS_Classifier,对这些属性的数据进行预处理之后,建立分类器模型,用基于层次的聚类算法BIRCH和训练集t_set得到操作序列分类器OS_Classifier,然后结合应用软件的功能需求和验证集v_set,对分类器模型调优,得到本次使用的分类器,即操作序列识别器OS_Classifier,同时,也把所有的操作序列划分成了N种类型,并每种类型建立一个操作序列创建模板OS_Creator,下一次再进行回归测试的时候,由于增加了数据、个别属性值发生了变化,会导致模型及其参数发生改变,因而要重新执行上述方法,得到更新的操作序列识别器OS_Classifier。
进一步,测试数据构造模块:包括(1)从原有测试中选择测试数据,(2)新增测试用例及其测试数据,准备修改后的回归测试和确认测试,然后运用自动化测试工具,启动回归测试:把测试数据转换成关键字测试驱动框架要求的格式,发出测试执行命令,把测试动作发送给测试管理模块。
进一步,测试管理模块接收从测试数据构造模块接收作为回归测试数据的操作序列集合,启动数据驱动的测试框架,输入操作序列模拟用户对智能家居系统的操作,或者系统自身发出的控制指令,通过测试接口模块及其智能家居网关向智能家居系统传送,实现回归测试,然后,通过智能家居网关向接收系统的反馈信息或状态数据记作测试结果,用于分析测试效果。
附图说明
图1是智能家居系统回归测试的原理结构;
图2是智能家居系统回归测试方法的一种实施流程。
具体实施方式
下面结合具体实施方式对本发明进行详细说明。
本发明系统结构如图1所示,包括测试接口模块、操作信息管理模块、测试数据构造模块和测试管理模块4个模块。SUT(待测系统)是本发明的测试对象,也就是智能家居系统及其组成的智能家电、家居设备(统一简称智能终端),如智能电视、智能冰箱、智能洗衣机、智能空调、智能微波炉、智能窗帘、智能照明等设备。本发明系统通过网络与这些智能终端进行数据传输与控制,实现回归测试。
1.测试接口模块
该模块是本发明与待测智能设备的接口,是在普通智能家居网关基本功能上,增加归回测试需要的功能,该模块在本发明中的基本作用是通过它实现系统的信息采集、信息输入、信息输出、集中控制。1)接受用户的操控各种智能家电设备的指令(比如空调升温、选择电视频道)或者参数设置(譬如微波炉的启动时间、温度、加热时间等),2)把用户操控指令以信号形式发送到相应的智能家电设备,3)接收各种智能家电设备传送的信号(如应答信号、状态信号、数据信号等)并存储起来,4)根据用户设置的参数、要求以及设备的状态,编制指令程序,然后发送给相应的设备,5)运行日志记录,包括从用户/控制中心接收、发送的指令,设备的相应和运行结果,6)按照系统设置或用户请求,发送运行日志记录,7)其它,如重置设备参数,增加、更改系统中的设备等。
2.操作信息管理模块
该模块的基本作用是从本发明的测试接口采集用户与智能家居系统及其智能终端的交互命令、参数设置以及获取的状态、事件、消息、信号等信息,进行吸取、转换、归一、分类等处理,以便用以回归测试。
1)从测试接口模块采集系统交互命令及响应(状态、结果、事件、消息、信号)等信息,2)把这些信息依据终端类型(如冰箱、洗衣机、窗帘)、信息类型(如动作、参数、状态)进行初步分类和标注,3)按照智能家居系统的操作要求,对信息进行格式转换、数据清洗、数据集成、数据归约、数据变换等数据预处理。
在应用智能家居系统时,用户看到和使用智能家居系统、完成的一项任务通常是由一系列的基本操作完成,对应的是内部程序实现的一组按照一定顺序执行的基本函数或方法。不同的操作、不同的操作序列、不同的操作数据,都可能产生不同的操作结果,导致任务是否完成、结果是否满足预期。本模块的一个基本功能就是从应用信息中识别出基本操作和操作序列,统计其使用率,做出成功与否的标记,然后存入相应的库中。
4)基本操作识别,运用编译技术的语法分析方法,识别出每个操作信息的基本操作,记录基本操作的参数及数值,统计基本操作的使用次数,然后存入基本操作库。
5)操作序列识别器及识别。定义一个基本操作bop是应用程序中实体的一个函数或者对象的一个方法(统称对象和函数),一个对象的所有基本操作构成了该对象的基本操作集,它是有穷的。一个操作序列o_seq是基本操作集中有穷个成员(基本操作)组成的序列<bo1,bo2,......,bon>,n>1的正整数。按照有形式化语言的理论,一个对象的基本操作集视作语言的符号集合∑,一个操作序列就是该符号集合元素按照顺序构成的符号串,所有符号串的集合就是语言,即∑+,也就是所有长度是1的符号串、长度是2的符号串、......,长度是n的符号串。例如,对于只有10个数字的符号集合,构成的数(数字串)的个数有101+102+…+10n+…,其中n是符号串的长度。也就是说,一个对象的操作序列的数量巨大。但是,就像26个英文字母的任意的串都是英文单词,基本操作都成的每一个操作序列并非有效。应用软件没有明确的定义哪些基本操作可以连续使用、构成的操作序列都是有实际意义的交互动作。因此,从大量有效的用户交互信息中识别出有效的操作序列并分类,就是一个核心工作。我们采用机器学习的聚类算法,从用户交互的大量信息中挑选两个数据集:训练集t_set和验证集v_set,动态地建立一个操作序列分类器OS_Classifier。
操作序列特征向量的属性如表1:
表1
其中使用频率指的是一个基本操作出现的次数占整个数据中的比率,成功率和失败率分别指的是一个基本操作是否成功的次数占整个数据中的比率,操作序列的频度指的是一个基本操作在整个数据中成为操作序列的比率。
对这些属性的数据进行预处理之后,建立分类器模型,用基于层次的聚类算法BIRCH和训练集t_set得到操作序列分类器OS_Classifier,然后结合应用软件的功能需求和验证集v_set,对分类器模型调优,得到本次使用的分类器,即操作序列识别器OS_Classifier。同时,也把所有的操作序列划分成了N种类型,并每种类型建立一个操作序列创建模板OS_Creator。
下一次再进行回归测试的时候,由于增加了数据(用户交互信息)、个别属性值发生了变化(如使用频度),可能会导致模型及其参数发生改变,因而要重新执行上述方法,得到更新的操作序列识别器OS_Classifier。
3.测试数据构造模块
根据测试要求——应用软件的功能和性能,应用软件的修改类型(增加、完功能、优化性能、更改缺陷)以及用户数据的分布,构造测试数据:包括(1)从原有测试中选择测试数据,(2)新增测试用例及其测试数据,准备修改后的回归测试和确认测试,然后运用自动化测试工具,启动回归测试:把测试数据转换成关键字测试驱动框架要求的格式,发出测试执行命令,把测试动作发送给测试管理模块。
(1)选择回归测试数据。根据软件的更改、更新、扩展等变化,依据测试需求、缺陷分布和用户操作的分布,从操作序列库中选择一组操作序列成为回归测试的测试数据。为了从当前大量的N类操作序列均衡地从每一类中选出一个(等价划分测试),运用分类算法如下:
TestDataSelection从每种操作序列中挑选一组、成为回归测试的测试数据,用于确认修改后的软件仍然具备应该有的功能,修改没有产生新的缺陷。
(2)对于软件的缺陷更改和新增功能,需要产生新的测试数据用于回归测试,验证软件满足了需求。技术如下:首先利用遗传算法和从基本操作库中选择一组数据,运用操作序列创建模板OS_Creator构成一个操作序列seq,对这个序列进行变化:改变顺序、增加一个基本操作、删除一个基本操作,得到一个新的seq’,然后将其输入到操作序列识别器OS_Classifier。对于不完全符合操作序列识别条件的数据,就有可能是新的操作序列,如果操作相似度超过预先设定的阈值,则接受新的操作序列seq’;重复这些步骤,直到构造出要求数量的、新的操作序列的集合作为回归测试数据。
设有操作序列o_seq1=<bo11,bo12,......,bo1n>和操作序列o_seq2=<bo21,bo22,......,bo1m>。o_seq1和o_seq2的相似度除了考虑其中每个基本操作的相似度,还要考虑两个序列中基本操作的顺序。定义两个基本操作os的相似度simi为它们两个特征量的欧氏距离,两个操作序列的相似度similarity为
4.测试管理模块
本模块接收从测试数据构造模块接收作为回归测试数据的操作序列集合,启动数据驱动的测试框架,输入操作序列模拟用户对智能家居系统的操作,或者系统自身发出的控制指令,通过测试接口模块及其智能家居网关向智能家居系统传送,实现回归测试。然后,通过智能家居网关向接收系统的反馈信息或状态数据记作测试结果,用于分析测试效果。
其中本发明的测试引擎采用了关键字驱动测试技术,由于这个技术处于较低的层次,而我们的回归测试时系统级测试,即测试的一组用户操作能否实现某个任务或操作功能。测试引擎的执行基本过程如下:
对每一个操作序列,启动关键字测试驱动框架,对操作序列进行解析:分析出具体的测试对象(如按钮、菜单、事件)、发出的方法以及参数数据;查找对象池,据此查找方法表、找到对应的关键方法,执行引擎项初始化对象、启动执行。其中的方法表,给出关键字和方法、参数的对应关系,以便构造出实际可以运行的函数或方法,送到SUT(测试系统中的待测对象)、执行。
图2示意了本发明的一个实施流程。方案实施时,可以在现有的智能家居网关/智能家庭网关基础上,外加“测试接口模块”,也可以独立设计包含“测试接口模块”功能的智能家居网关。要求智能家居网关对外连接(有线/无线)互联网,对内连接各种家具、家电设备。能通过无线方式与智能终端(设备)等产品进行数据交互、数据采集、无线路由、通讯管理、集中控制、远程控制等功能,同时可以安装其他应用软件。智能家居网关通常支持RS232,ZigBee,WiFi,蓝牙,MQTT(消息队列遥测传输),SOAP,RTU串口协议,TCP,UDP,RDS(远程数据服务)等通讯协议和接口。
流程如下:
第1步,测试模块从智能网关系统中定期或实时地采集用户操作(包括动作指令和参数设置)与系统指令(智能化设置、满足条件后自动执行),然后通过网络传输到操作信息库。
第2步,把操作信息归类,划分到智能电视、智能冰箱、智能洗衣机、智能空调、智能窗帘、智能照明等设备。
第3步,对每一类的操作信息的数据进行数值化、清洗、集成、转换、规约等预处理。
第4步,运用编译的语法分析技术识别出基本操作并存入库中。实际实施时,根据应用程序使用的具体的编程语言,采用相应编译程序的库等。
第5步,用机器学习的聚类算法BIRCH产生操作序列识别器OS_Classifier,把操作信息分类——识别出操作序列,以链表的数据结构保存,记下出现的次数、操作成功与否等信息,一并存入相应的数据库。每当进行新的回归测试,可以在分类器模型调优时选择使用新出现的用户操作信息或系统控制信息。也可以根据实际的使用和验证,选择机器学习的其它聚类分析算法,如k-均值算法、DBSCAN算法等。
下面开始根据测试需求、错误分布、以及用户数据的分布等特性,产生测试数据用于回归测试。
第6步,从操作序列库中在TestDataList运用诸如决策树算法、ID3算法C4.5算法,从每种类别中分别选择一组操作序列构成回归测试数据集。
并列的第7步,从基本操作库中选择一组数据用遗传算法构成一个操作序列,然后输入到操作序列识别器OS_Classifier,为回归测试产生新的测试数据集合。
第8步,测试准备:测试数据集还原关键字驱动测试框架可以执行的格式,这要求提供一张动作-函数对应表,产生新的参数作为测试参数,把测试参数放到要求的格式及文件中。具体实施时,可以采用的关键字驱动测试框架如QTP、Robot Framework、,也可以利用Appium、Selentium、Robotium等自己开发关键字驱动测试框架。
第9步,启动关键字驱动测试框架的测试执行,把操作指令(通过网络)送到测试接口模块,通过智能网关,向智能家居系统及智能家电设备发送模拟指令,执行一次测试。
第10步,智能网关记录测试结果,并反馈给测试管理模块,存储起来以便分析测试效果。
本发明提出了针对智能家居系统中用户对系统大量的、实际的操作信息和系统的控制信息,根据软件的回归测试需求,运用机器学习中聚类算法和分类算法,从这些大量的操作和控制信息中建立操作序列识别器模型OS_Classifier,并据此选择已有的操作序列、构造新的操作序列用作回归测试数据集合,然后运用基于关键字的数据驱动测试框架,对智能家居系统及其智能终端实施在线的回归测试。针对用户对智能家居系统及其智能终端的操作信息和系统的控制信息,本发明定义了基本操作和操作序列,设计了其特征向量的属性,分别给出了两个基本操作和两个操作序列相似度的计算方法。结合操作序列识别器OS_Classifier和TedstDataList方法,构造新的有效的操作序列,组成回归测试数据集合。每当采集了大量的用户操作和控制指令,更新了基本操作库和操作序列库,都可以执行算法,调整分类器模型即操作序列识别器OS_Classifier。因而,本发明提出了动态分类器的创建和调优技术。结合关键字驱动测试框架,提出了基于操作序列的自动化软件测试框架,首先把每个操作序列分解成基本操作,通过关键字驱动测试框架的动作-函数对应表,构造出应用软件的对象和方法,用数据驱动测试技术运行程序,从而实现回归测试的自动化执行。
本发明为智能家居系统提供了有效的回归测试数据产生和自动化执行,提高了智能家居系统中应用软件的开发效率和质量,为现代软件的开发、部署和应用提供了支持,本发明的优点还在于:
(1)利用智能家居系统中的设备采集系统应用中产生的大量数据,用于系统应用软件的回归测试,复用了数据和设备,节约了测试资源。(2)本发明的回归测试,主要是利用了智能家居系统的设备和网络,运用了智能方法和技术,通过对系统自己产生基本数据的采集、加工、分析和重构,用于系统的回归测试,在实现的时候无需增添其它的硬件设备。(3)本发明在不中断现有系统正常运行的情况下,执行了实时系统回归测试的整个过程,包括智能化测试数据的选择/生成、自动化测试的执行以及测试结果的存储和分析。
以上所述仅是对本发明的较佳实施方式而已,并非对本发明作任何形式上的限制,凡是依据本发明的技术实质对以上实施方式所做的任何简单修改,等同变化与修饰,均属于本发明技术方案的范围内。
Claims (5)
1.一种智能家居系统的回归测试系统,其特征在于:包括测试接口模块、操作信息管理模块、测试数据构造模块和测试管理模块4个模块;待测系统是测试对象,通过网络与待测系统的智能终端进行数据传输与控制,实现回归测试,所述操作信息管理模块是从测试接口采集用户与智能家居系统及其智能终端的交互命令、参数设置以及获取的状态、事件、消息、信号信息,进行吸取、转换、归一、分类处理,以便用以回归测试,包括:
1)从测试接口模块采集系统交互命令及响应信息,2)把这些信息依据终端类型、信息类型进行初步分类和标注,3)按照智能家居系统的操作要求,对信息进行格式转换、数据清洗、数据集成、数据归约、数据变换数据预处理;4)基本操作识别,运用编译技术的语法分析方法,识别出每个操作信息的基本操作,记录基本操作的参数及数值,统计基本操作的使用次数,然后存入基本操作库;5)操作序列识别器及识别,定义一个基本操作bop是应用程序中实体的一个函数或者对象的一个方法,一个对象的所有基本操作构成了该对象的基本操作集,采用机器学习的聚类算法,从用户交互的大量信息中挑选两个数据集:训练集t_set和验证集v_set,动态地建立一个操作序列分类器OS_Classifier,对这些属性的数据进行预处理之后,建立分类器模型,用基于层次的聚类算法BIRCH和训练集t_set得到操作序列分类器OS_Classifier,然后结合应用软件的功能需求和验证集v_set,对分类器模型调优,得到本次使用的分类器,即操作序列识别器OS_Classifier,同时,也把所有的操作序列划分成了N种类型,并每种类型建立一个操作序列创建模板OS_Creator,下一次再进行回归测试的时候,由于增加了数据、个别属性值发生了变化,会导致模型及其参数发生改变,因而要重新执行上述方法,得到更新的操作序列识别器OS_Classifier。
2.按照权利要求1所述一种智能家居系统的回归测试系统,其特征在于:所述待测系统包括智能电视、智能冰箱、智能洗衣机、智能空调、智能微波炉、智能窗帘、智能照明设备。
3.按照权利要求1所述一种智能家居系统的回归测试系统,其特征在于:所述测试接口模块是与待测智能设备的接口,是在普通智能家居网关基本功能上,增加归回测试需要的功能,该模块作用是通过它实现系统的信息采集、信息输入、信息输出、集中控制,包括:1)接受用户的操控各种智能家电设备的指令,2)把用户操控指令以信号形式发送到相应的智能家电设备,3)接收各种智能家电设备传送的信号并存储起来,4)根据用户设置的参数、要求以及设备的状态,编制指令程序,然后发送给相应的设备,5)运行日志记录,包括从用户/控制中心接收、发送的指令,设备的相应和运行结果,6)按照系统设置或用户请求,发送运行日志记录,7)重置设备参数,增加、更改系统中的设备。
4.按照权利要求1所述一种智能家居系统的回归测试系统,其特征在于:所述测试数据构造模块:包括(1)从原有测试中选择测试数据,(2)新增测试用例及其测试数据,准备修改后的回归测试和确认测试,然后运用自动化测试工具,启动回归测试:把测试数据转换成关键字测试驱动框架要求的格式,发出测试执行命令,把测试动作发送给测试管理模块。
5.按照权利要求1所述一种智能家居系统的回归测试系统,其特征在于:所述测试管理模块接收从测试数据构造模块接收作为回归测试数据的操作序列集合,启动数据驱动的测试框架,输入操作序列模拟用户对智能家居系统的操作,或者系统自身发出的控制指令,通过测试接口模块及其智能家居网关向智能家居系统传送,实现回归测试,然后,通过智能家居网关向接收系统的反馈信息或状态数据记作测试结果,用于分析测试效果。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201811325010.7A CN109491258B (zh) | 2018-11-08 | 2018-11-08 | 一种智能家居系统的回归测试系统 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201811325010.7A CN109491258B (zh) | 2018-11-08 | 2018-11-08 | 一种智能家居系统的回归测试系统 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN109491258A CN109491258A (zh) | 2019-03-19 |
CN109491258B true CN109491258B (zh) | 2021-08-31 |
Family
ID=65695313
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201811325010.7A Active CN109491258B (zh) | 2018-11-08 | 2018-11-08 | 一种智能家居系统的回归测试系统 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN109491258B (zh) |
Families Citing this family (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113031452B (zh) * | 2019-12-24 | 2023-08-01 | 杭州行至云起科技有限公司 | 一种批量处理智能家居设备控制指令的方法和系统 |
CN111142399A (zh) * | 2020-01-09 | 2020-05-12 | 四川轻化工大学 | 一种基于计算机的嵌入式智能家居自动化控制测试系统 |
CN111475413B (zh) * | 2020-04-02 | 2024-03-15 | 深圳创维-Rgb电子有限公司 | 一种测试方法及装置 |
CN112463625B (zh) * | 2020-12-09 | 2022-12-02 | 苏州浪潮智能科技有限公司 | 基于应用程序接口的功能回归验证方法、装置及存储介质 |
CN113360397A (zh) * | 2021-06-28 | 2021-09-07 | 平安普惠企业管理有限公司 | 系统功能的回归测试方法、装置、设备及存储介质 |
CN115277516A (zh) * | 2022-07-22 | 2022-11-01 | 四川虹美智能科技有限公司 | 基于api接口的自动化场景测试系统及方法 |
CN116248567A (zh) * | 2023-02-21 | 2023-06-09 | 深圳绿米联创科技有限公司 | 智能设备的测试方法、装置、电子设备及测试系统 |
Family Cites Families (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
TWI285341B (en) * | 2002-12-31 | 2007-08-11 | Powerchip Semiconductor Corp | Method for analyzing in-line QC parameters |
CN100544292C (zh) * | 2007-07-03 | 2009-09-23 | 中兴通讯股份有限公司 | 一种宽带接入服务器自动化测试的方法 |
CN101137170A (zh) * | 2007-09-04 | 2008-03-05 | 深圳市中兴移动通信有限公司 | 一种嵌入设备的软件自动测试工具及方法 |
CN103514088B (zh) * | 2012-06-19 | 2016-05-11 | 珠海世纪鼎利通信科技股份有限公司 | 一种终端应用软件的功能回归测试方法 |
US9256702B2 (en) * | 2013-12-18 | 2016-02-09 | Johnson Controls Technology Company | Systems and methods for determining an appropriate model parameter order |
JP2018073069A (ja) * | 2016-10-27 | 2018-05-10 | 富士通株式会社 | 評価方法、評価プログラム、及び評価装置 |
CN107608898B (zh) * | 2017-10-10 | 2020-01-07 | 浙江网新恒天软件有限公司 | 一种再现测试流程以实现自动化回归测试的方法 |
CN107729255B (zh) * | 2017-11-10 | 2021-04-09 | 北京奇虎科技有限公司 | 软件测试方法、装置及系统 |
CN108563572A (zh) * | 2018-04-13 | 2018-09-21 | 唐山新质点科技有限公司 | 一种回归测试方法、装置及服务器 |
-
2018
- 2018-11-08 CN CN201811325010.7A patent/CN109491258B/zh active Active
Also Published As
Publication number | Publication date |
---|---|
CN109491258A (zh) | 2019-03-19 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN109491258B (zh) | 一种智能家居系统的回归测试系统 | |
CN101526919B (zh) | 生成脚本文件对Web应用软件进行测试的方法及装置 | |
US8180762B2 (en) | Database tuning methods | |
US20140129032A1 (en) | Genetic learning for environmental control automation | |
US10295979B2 (en) | Scheduling in manufacturing environments | |
CN115600998B (zh) | 基于生产管理平台的工艺管理方法、系统和可读存储介质 | |
CN113204495A (zh) | 基于b/s架构的自动化测试方法、装置、存储介质及设备 | |
TW202006614A (zh) | 使用方塊式工作流程的限制編程 | |
CN114911535B (zh) | 应用程序组件配置方法、存储介质及电子装置 | |
CN113986349A (zh) | 数据处理方法、装置、计算机可读存储介质和计算机设备 | |
CN109213105A (zh) | 一种可重构装置、实现可重构的方法及分布式控制系统 | |
JP2023527188A (ja) | 自動機械学習:統合され、カスタマイズ可能、及び拡張可能なシステム | |
US10003492B2 (en) | Systems and methods for managing data related to network elements from multiple sources | |
CN108132802B (zh) | 一种配置模型在系统开发中的应用方法 | |
CN112256978B (zh) | 一种基于数据模型的数据处理方法、装置、介质 | |
CN109991860A (zh) | 一种通过扫描二维码更换智能家居设备的方法及装置 | |
CN111949246A (zh) | 新能源电力行业应用的创建方法及装置 | |
CN110262973B (zh) | 数据养成维护方法、装置、设备及计算机存储介质 | |
US20200019910A1 (en) | Block-based prediction for manufacturing environments | |
CN107182071B (zh) | 一种局数据的处理方法及装置 | |
CN110659060A (zh) | 一种就地分布式fa配置快速配置方法及系统 | |
CN111242160A (zh) | 一种基于人工智能技术的智能数据管理及风险控制系统 | |
CN111401825B (zh) | 一种实例化方法和装置 | |
CN117824063B (zh) | 一种基于智能手表的空调远程调控方法、系统及介质 | |
CN115713099B (zh) | 一种模型设计方法、装置、设备及存储介质 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |