前言:中文期刊网精心挑选了电子测试报告范文供你参考和学习,希望我们的参考范文能激发你的文章创作灵感,欢迎阅读。
电子测试报告范文1
2017年9月8日,艾媒咨询《2017上半年中国移动应用商店市场监测报告》。iiMedia Research(艾媒咨询)数据显示,2017年第二季度中国第三方移动应用商店活跃用户规模达4.59亿人,增长率与上一季度持平,保持低速增长。艾媒咨询分析师认为,未来各应用商店将开拓新的流量入口,并更加专注于对现有用户流量的转化,提高流量转化率。
应用商店市场进入存量时代
iiMedia Research(艾媒咨询)数据显示,2017年第二季度中国第三方移动应用商店活跃用户规模达4.59亿人,增长率与上一季度持平,保持低速增长。艾媒咨询分析师认为,随着移动互联网流量红利的消退以及近年来移动应用商店向大流量平台分发流量的趋势,第三方移动应用商店的活跃用户规模增长将趋于平缓。未来各应用商店将开拓新的流量入口,并更加专注于对现有用户流量的转化,提高流量转化率。
3BAT四强格局稳定 360手机助手领跑市场
iiMedia Research(艾媒咨询)数据显示,在2017年第二季度第三方移动应用商店活跃用户分布中,360手机助手继续保持领先地位,活跃用户占比42.7%,应用宝和百度手机助手排名稳定,以34.2%和24.3%分列二、三位。艾媒咨询分析师认为,在过去的半年中,移动应用商店市场暗流汹涌,各第三方应用商店厂商谋求个性化发展以与其它厂商加以区别的同时,还要与硬件终端厂商应用商店作流量的竞争。
豌豆荚用户粘性指数居于首位
iiMedia Research(艾媒咨询)数据显示,豌豆荚以8.7的粘性指数在2017年上半年中国应用商店用户粘性指数排行中居于首位,360手机助手和应用宝紧随其后。艾媒咨询分析师认为,在市场普遍进入存量市场的情况下,高活跃率、高使用市场的用户对应用的价值贡献越趋提高。豌豆荚凭借精准推荐的大数据基础、齐全的应用品类、优质首发内容等资源基础为用户带来良好体验,实现应用较高的用户粘性。在第三方应用商店与手机厂商自营应用商店日趋激烈的当下,第三方应用商店应充分发挥良好产品体验的竞争优势。
进阶用户是应用商店主要用户类型
iiMedia Research(艾媒咨询)数据显示,受访应用商店用户中,接近五成为“进阶用户”——对获取APP拥有个性化需求,但在具体下载决策上仍需依赖应用商店排行、推荐、评分等指标。艾媒咨询分析师认为,应用商店主流用户仍拥有较强的APP下载需求,且应用商店的排行榜、评分推荐等对用户存在一定影响力,各应用商店可在个性化精准推荐方面着力,挖掘用户潜在下载需求,发挥引导作用。
第三方应用商店需加强用户体验,保卫核心竞争力
iiMedia Research(艾媒咨询)数据显示,在三种应用商店类型中,手机厂商自营应用商店超越第三方应用商店,以50.3%的占比成为受访用户最为偏好使用的应用商店。艾媒咨询分析师认为,手机厂商因直接预装至硬件以及拦截第三方应用商店等方式获取强势用户基础,分流了一部分第三方应用商店用户。第三方应用商店需在用户体验等产品性能上多下苦功,以充分发挥产品优势。
应用齐全程度仍是用户重要考虑因素
iiMedia Research(艾媒咨询)数据显示,应用齐全程度、搜索匹配精准程度和独家首发内容分列受访用户选择应用商店时重点考虑因素前三名。艾媒咨询分析师认为,应用商店经过多年发展,应用齐全程度基本相差不大,独家首发内容和搜索匹配精准程度成为竞争重点,目前各应用商店多通过大数据、人工智能等技术的应用,着力优化搜索精准度。另外,应用商店的竞争已向上游拓展,拥有优质内容资源厂商将获得竞争优势。
应用商店需着力优化搜索匹配
iiMedia Research(艾媒咨询)数据显示,超过五成受访应用商店用户通过准确搜索APP名称查找并下载,而有44.5%的用户仅在应用商店中搜索需求关键字,从搜索结果中筛选满足需求的APP并下载。与主动搜索相比,通过排行榜和应用推荐内容或活动下载应用的用户相对较少。艾媒咨询分析师认为,随着移动互联网的普及和用户的成熟,用户更加明确自身应用下载需求,需求搜索/模糊搜索成为重要的APP获取方式。应用商店厂商可继续优化搜索功能,精准捕捉用户需求,不断提升应用推荐的精准程度,创新推荐方式。
发掘优质新颖应用是应用商店重要功能
iiMedia Research(艾媒咨询)数据显示,超过七成受访用户下载过应用商店推荐的APP,而在用户对应用商店应用推荐功能的考量中,所推荐应用的新颖有趣程度是最受关注的因素,应用的安全性和兴趣匹配度则分列二、三位。艾媒咨询分析师认为,相比渗透率和认知度占据较大优势的头部应用,应用商店推荐是许多“小而美”应用关键的推广方式,也是用户认识优质小众应用的主要途径。发掘新颖有趣的精品应用,并以创意方式推荐给用户是应用商店的重要功能。每周一推的豌豆荚设计奖为发现优质应用的代表,独立于广告商务运作保证了其应用评选的独立性。
减少干扰广告成应用商店用户最大期待
电子测试报告范文2
【关键词】嵌入式软件;自动化测试;平台框架
进入二十一世纪之后,硬件元器件得到了飞速发展,从而也是的嵌入式软件的功能更加强大和复杂。随之而来的也是嵌入式软件测试工作的加重,传统的软件测试技术已经难以满足嵌入式软件越来越复杂的需求。而目前,市场上已经有较多的传统软件自动化测试技术,如何在这些技术的基础上进行改进,从而能够适应嵌入式软件环境,从而实现嵌入式软件的自动化测试,是嵌入式软件发展的重要方向。
1.嵌入式软件自动化测试平台分析
嵌入式软件的自动化测试即利用脚本来自动化驱动嵌入式软件的运行,并且自动收集相关数据进行分析,最终生成相应的测试报告。虽然,嵌入式软件的自动化测试流程与一般PC机应用软件的自动化测试流程相同。但是,由于嵌入式软件软件对电子设备的高度依赖性,以及电子设备收周围环境影响较重,从而导致嵌入式软件的自动化测试平台存在如下的问题。
(1)由于电子元器件受到周围环境的影响,无论在宿主机上所进行的动态测试多充分,也无法保证嵌入式软件在实际的硬件环境中通过。
(2)硬件系统非常复杂,难以对测试过程中所发现的问题进行排查。
(3)植入桩点会影响系统的实时性。
(4)上位机的测试环境中,由于上位机与下位机的通信量较大,测试结果数据较多,容易导致通信的堵塞。
2.嵌入式软件自动化测试平台概要设计
通过对嵌入式自动化测试框架的分析,本文提出一种由脚本驱动器、接口映射表、数据驱动器和支持函数库所组成的,针对嵌入式自动化软件测试的组合型测试框架。
如图1所示,高层脚本调用执行下层脚本;底层运行脚本通过查询接口映射表调用待测试系统接口进行驱动和通信;测试脚本从数据文件调用数据执行测试。
(1)脚本驱动器
脚本驱动器调用高层脚本,高层脚本调用下层脚本。底层脚本包括待测试系统具体的测试步骤。
(2)接口映射表
接口映射表借鉴了关键字驱动测试框架中的组件映射表思想。测试人员根据待测试系统的实际需求,设计接口名称和参数,从而实现待测试系统的抽象化。在运行测试脚本是,首先通过映射表匹配接口名称和参数,当系统接口改变时,只需要改变映射表即可,从而实现测试系统与待测试系统的松耦合。
(3)数据驱动器
数据启动器是测试脚本与数据文件的连接器,通常采用文本文件、XML文件等来实现。在测试过程中,需要数据时,有数据驱动器读取数据。数据驱动器是脚本与测试数据分离,当测试数据变更时,只需要修改数据驱动器,而不需要对脚本进行改动。
(4)支持函数库
包含了数据缓存、文件操作、字符串处理等测试框架中所用到的通用处理函数。
3.嵌入式软件自动化测试平台详细设计
3.1 测试框架设计
嵌入式软件自动化测试平台的卡框架,采用嵌入式软件通用的Host/Target测试策略。
如图2所示,本文所设计的嵌入式软件自动化测试平台采用测试管理工具和测试双层结构。
3.2 测试流程设计
在进行嵌入式软件自动化测试时,测试人员的工作包括:编写配置文件、编写脚本、生成数据文件、测试报告分析等工作。嵌入式软件的自动化测试流程如图3所示。
当建立了管理工具和测试自检的通信之后,向测试发送测试请求,并且将脚本和数据传送到测试上。测试将测试脚本存放到特定的区域执行,并且将测试结果返回给宿主端。当宿主端接收到测试所发送脚本执行完毕信号后,发送新的测试脚本和数据给测试,直到所有的脚本测试完成之后,对测试所返回的测试结果进行分析,得出最终的测试报告。
3.3 功能设计
3.3.1 管理工具功能
为了不占用宿主段过多资源,将一些协助测试模块都放在宿主端中。管理工具的功能结构如图4所示。
(1)脚本配置管理模块
在进行嵌入式软件自动化测试之前,需要设计一份配置文件。在配置文件中定义好了脚本位置、宿主机与测试之间的通信、脚本执行时间间隔、通信桩点个数等内容。测试管理工具先对脚本配置文件进行解析,并且将解析的信息传送给目标机。
(2)插桩模块
通过插桩对待测试软件的功能进行细分,并且根据执行的情况,来分析待测试软件的测试覆盖情况。
(3)日志分析生成模块
测试日志文件中主要包含了待测试软件的测试结果,以及测试覆盖信息。其中测试报告中包括了测试跟踪信息、测试用例、测试用例的期望和实际结果、测试用例的执行情况及汇总等。测试覆盖信息包括:测试和未测试的代码段、功能的覆盖标记及汇总等信息。
(4)数据通信模块
主要负责宿主机与测试之间的消息通信。
3.3.2 测试功能
测试运行在目标机上,是整个嵌入式软件自动化测试平台的核心,测试的整体结构如图5所示。
(1)测试驱动模块
根据配置管理,对管理工具发送的测试脚本进行解析,并且调用工具库中的通用函数来完成测试。同时,将测试结果和桩点覆盖信息存入到特定区域。
(2)数据驱动模块
在数据文件主要包含了测试脚本文件、测试数据文件和测试结果文件。当测试需要数据是,可以通过数据驱动模块完成数据表查找和数据批量处理等操作。对于测试数据量大,测试步骤类似的测试过程,可以极大的减少测试的复杂度。
(3)数据通信模块
主要负责与管理工具的数据通信模块进行数据交互。主要负责接收管理工具所发送的配置信息、脚本信息和数据文件信息;同时将测试结果和测试覆盖信息返回给管理工具。
4.结束语
软件测试是对软件质量进行评估的重要方法,自动化测试技术可以降低软件测试成本,缩短软件测试时间。特别是对于测试环境更加复杂的嵌入式软件而言,自动化测试具有更加重要的意义。
参考文献
[1]邓勇,曾建光.嵌入式软件系统及其自动测试技术的发展与现状[J].科技咨询导报,2007,21:5-6.
[2]凌永发,张云生,郭秀萍.软件测试自动化中的脚本技术[J].云南民族学院学报(自然科学版),2002,11(1):544-548.
[3]郑世伟.嵌入式软件的测试方法和工具[J].单片机与嵌入式系统应用,2001,4:26-28..
电子测试报告范文3
大型冷水机组的开发中,控制软件作为产品的一个部件,是设备稳定运行的关键,在设计、开发、更改等全过程中必须依据相关准则和符合管理标准,本文从大型冷水机组的控制软件的设计和开发过程入手,分析了各个阶段的控制管理方式及注意事项,使软件更好满足开发需求,并使开发过程具备可追溯性。
【关键词】
控制软件;过程控制管理
1引言
大型冷水机组的开发(简称产品开发)中,控制软件作为产品的一个部件,是设备稳定运行的关键,这就意味着控制软件的管理等同产品,控制软件的管理成为必不可缺的工作。控制软件作为产品开发过程中的一个部件的开发,必须符合开发管理的全过程控制、管理。没有管理,编制的控制软件控制逻辑考虑就会不全面,特别是当出现问题时,工程师现场进行修改会很随意,没有对问题进行系统分析,只是头疼医头,脚痛医脚,同时,因为更改没有记录,再发生问题,也无法查找原始记录。
2控制软件开发的过程控制
管理按照现行的管理体系标准GB/T19001/ISO9001,控制软件作为产品的一个部件,包含管理体系的设计和开发全过程:设计和开发策划;设计和开发输入;设计和开发输出;设计和开发评审;设计和开发验证;设计和开发确认;设计和开发更改的控制。
2.1设计和开发策划对于控制软件编制,从从属的产品开发开始,了解产品需要控制的全部细节,如I/O点的需求,以及关键部件的功能确认,参数设置等,形成软件编制的逻辑图,成为控制软件的设计输入,这一过程就是设计和开发的策划。
2.2设计和开发输入和输出作为控制软件的规划来说,各功能进行模块化管理,形成软件的标准化管理,从长远来看,是提高效率的有效办法,也是标准化管理的要求,利用PaaS平台技术的应用,实现产品在客户端运行大数据采集,进行数据建模及MIS系统开发与管理,以了解客户端产品的运行情况,实时为客户提供及时的服务。作为控制软件开发的输入的逻辑图是需要经过产品设计工程师及相关部件设计工程师,以及各相关部门如测试站、服务部等进行评审的,设计和开发评审是贯穿在设计和开发过程的每个阶段节点,一旦评审通过,评审通过的逻辑图将是控制软件开发的输入。每一开发阶段的输出均要满足相应的需求及有关的开发管理和约定,并要包含或引用进入后续工作阶段的验收准则,对影响有产品安全和正常工作的重要的产品特性要进行标识。
2.3设计和开发验证控制软件编制完成后,必须进行验证,验证必须要有验证的内容和达到的目的,验证内容必须是经过评审的运行大纲,目前确认的方法有两种:一是在模拟箱上,对照输入的逻辑要求,设置产品工作的各个极限工作条件,按运行大纲运行控制软件逐条检查逻辑要求的功能,模拟测试,必须填写模拟测试报告,如实记录各功能测试的结果,软件模拟测试工程师不能是软件编制工程师;二是在正式产品上,前提是模拟测试通过,因为产品测试,不仅需要耗费巨大的电费和水费外,还需要相当长的时间,成本耗损巨大。按产品运行大纲,在产品工作的各个极限条件下,进行产品运行,并根据大纲要求检查控制软件的功能,这时的测试是动态的,通过实时的数据记录(即便测试结果未达到目标,实时的数据记录也将是后续软件修改的依据),形成产品的测试报告,证明控制软件运行正常,产品的各个极限工作条件下的测试报告将是控制软件运行正常的重要证据,同样控制软件上机测试,必须是产品设计工程师和软件测试工程师,而不能是软件编制工程师。只有经过验证的开发输出才能提置管理并被验收,供后续阶段使用。
2.4设计和开发评审控制软件验证完成后,必须进行相应的评审,只有在所有已发现的缺陷的影响均被消除,或缺陷的影响虽未消除,但已弄清带着缺陷进一步工作的风险之后,方可进行下一步的设计或实现工作。如有需要对控制软件进行更改,则更改后,必须再进行相应的验证,直至评审通过,并将控制软件的逻辑图、软件验证的运行报告和源代码等开发过程的技术文件进行存档管理。
2.5设计和开发测试与确认从单个软件项到一个完整的软件产品可能需要进行不同层次的测试,有一些不同的测试与集成方法,在某些情况下,可以将确认、现场测试和验收测试合为一个活动。描述测试计划的文档可以是一个独立的文档,或是其他文档的一部分,也可以由几个文档组成。在测试之前首先要制定和评审测试计划、规格说明和规程,其中应涉及测试计划、测试用例、测试数据、预期结果、测试类型、测试环境、测试工具、测试软件以及测试是否完成的测试准则等。测试时应按有关规格说明记录测试结果,同时记录发现的问题,指出可能对软件其他部分或冷水机组运作时带来的影响,并通知对此负责的人员,以便对问题能进行追踪直至问题解决;应确定受更改影响的部分,并对它们进行重新测试,同时对测试过程及结果进行评价。在需要的情况下,可以进行现场测试,可邀请供方和需求共同参与。在控制软件交付使用之前,应尽可能在实际的使用环境下对整个软件产品的运行进行确认。
2.6设计和开发更改的控制控制软件应用在产品上是需要进行反复的评审,测试验证、评审、修改,直至能达到设计目标,且没有任何bug。修改控制软件是一件很慎重的事情,修改分两种:一种是为实现某个特定的目的或要求,只是针对某个特定的Case,通常是在客户的特殊要求下进行;对于这种更改,由于是在标准软件的基础上增加特定的要求,需要在客户端验证后,将源代码特殊标号存档,并相应更改相应客户的档案信息,用于以后售后服务;二是因为某个功能性部件的更新或是存在开发过程中未发现的Bug,需要更新标准的控制软件;这种更改必须在仔细列明部件更改前后的不同之处,或是Bug的问题,对不同处进行更改,更改前必须经过慎重的评审,确认是有必要进行更改,更改后的控制软件需要重复开发过程的验证、评审过程。从某种角度来说,更改过程视同一个完整的开发过程,因为更改部分对产品的运行的稳定需要进行完整的验证,也就意味着对产品的每个极限工况条件都必须进行测试验证,验证前需要对验证用的测试大纲进行评审,确认更改部分的测试都考虑到位,测试后需形成相应的测试报告,并将整个更改过程的技术资料,测试报告,源代码等进行存档。
3结语
当准备交付经确认的控制软件产品时,应根据大型冷水机组应用需求及运行要求,同时结合相关的规定准则和方式判断该控制软件产品是否可以投入使用。在设计、开发、更改的全过程中必须符合管理标准的可追溯性,能很清晰的查阅到软件的标准号和版本号。
参考文献
[1]汪志强.基于C#水冷冷水机组性能测试软件开发[J].城市建设理论研究,2013(12).
电子测试报告范文4
关键词:装饰工程;技术控制要点
随着我国社会经济与科学技术的快速发展,建筑装饰工程的新材料、新技术被广泛应用于各类建筑工程项目之中。而在整个建筑工程项目中占据着重要位置的装饰工程的要求也越来越高,因此合理掌握装饰工程技术控制要点,就成了保证装饰工程施工质量的关键环节。
一、工程进度控制
对于装饰工程来说,首要考虑的就是在工期进度内完成相应的工程施工。主要包括以下几方面:
(一)装饰工程施工进度表的制定。在制定装饰工程施工进度表之前,应以工程项目的整体施工进度以及实际情况为依据,做好与项目土建施工的衔接,以实现施工进度计划的周密性与可行性。
(二)装饰材料采购。在装饰工程中所使用到的施工材料,必须逐项填入材料明细表内,在施工现场准备相应的材料临时存放点,并做好保护工作,由专人负责看管。在施工过程中,材料的进出都必须详细标明。另外,还应对材料验收与检验的时间进行记录。
(三)装饰施工人员清单。装饰施工单位应在施工之前详细制定施工人员清单,其内容包括施工人员的岗位职责与个人情况,在保证施工质量的同时,兼顾施工安全性。
(四)装饰工程隐蔽验收时间表。对于装饰工程中所涉及到的隐蔽工程,都必须制定详细的验收时间表,保证隐蔽工程报验的及时性与有效性。
目前在我国装饰工程中普遍存在着以装饰工程施工进度表来涵盖所有内容的情况,这样就难以从一张表格上看出装饰工程可能存在的问题。针对这个问题,装饰施工单位应尽量在施工之前将施工进度表进行细化、量化,并保证各时间节点的准确性。
二、工程技术质量控制
(一)装饰施工单位应将装饰所需要的所有施工图纸进行收集与整理,对于施工关键点则应加以进一步现场勘察,发现与图纸不符的,应及时做好沟通协调工作。
(二)装饰施工图纸应尽量详细,包括图纸中的节点描述,涉及到特殊装饰工艺的则应有详细的说明,防止在施工过程中出现装饰材料、器具等与图纸不符的情况。
(三)施工组织设计的编制。施工组织设计是装饰施工单位在施工之前必须完成的编制内容,一份完整而合理的施工组织设计对于装饰施工单位来说,不仅是施工质量与安全的保证,而且还对施工使用场地进行了说明与阐述。
(四)在装饰工程施工过程中,装饰施工单位所使用的装饰材料应具备防腐蚀、防四害、防潮、防水的功能。
(五)在装饰施工单位的现场,应制定施工管理人员、安全员与主要技术人员的明细表。
在施工技术质量方面,目前较为常见的问题有施工图纸与隐蔽工程。前者往往由于得不到足够的重视,而忽视了对施工现场的勘察,导致有些施工队伍在进入施工现场,准备开始施工时才发现施工部位与图纸不符合、施工设施不齐全、施工场地不足等这样那样的问题,直接导致的后果就是延误了工期,而且还使建筑施工的整体成本增加。而在隐蔽工程方面则是最容易出现问题的,由于装饰隐蔽工程的时效性较强,而一旦在隐蔽工程出现问题,则极易导致返工,不仅使工期进度受到极大的影响,而且同样会造成经济损失,因此,装饰施工单位应首先做好隐蔽工程的自检工作,再及时报验。
三、工程成本控制
装饰工程的成本控制主要体现在两个方面,一是在设计阶段的成本控制,二是在施工阶段的成本控制。
(一)设计阶段。在装饰工程的设计阶段,要有效控制成本,就应从审核图纸、论证装饰功能与论证装饰效果三方面入手。在成本控制上应从设计开始,只有保证设计阶段的质量,才能对后期的装饰施工成本起到保证作用。
(二)施工阶段。首先应对装饰施工的材料、设备及其等级与品牌实施预算,从而在保证施工质量与满足建设单位要求之间寻找最为经济、合理的成本预算,第二是选定的装饰施工材料的规格与应用应得到建设单位的检查与认同,并做好书面记录,第三就是应合理安排装饰施工计划,根据工程的实际情况与工期进度的要求来进行人员的调度安排。
装饰施工单位在进行工程成本控制时,要注意企业自身的经济效益与社会效益,这并不是说就要盲目地贪图进度或是偷工减料,而是要以建设单位为中心,在保证施工质量的基础之上,实现企业自身的经济效益与社会效益。除此之外,在成本控制中,常见的问题还有,当装饰施工进度到一半或是接近完工时,建设单位会因质量问题或是美观问题等要求装饰施工单位进行返工,这样一来不仅使成本增加,而且还大大延误了工期。针对这种情况,装饰施工单位应实时地与建设单位保持一定的沟通,避免此类问题的发生。
四、配套专业质量控制
(一)给排水工程应配套完善。包括管道压力检验测试报告、管道焊缝测试检验报告、工程管道焊接的详细记录、管道阀门解体检查记录等。
(二)强弱电工程应配套完善。包括建筑防雷装置、线路隐蔽验收记录、线路接地隐蔽验收记录、安全电柜配置、紧急发电装置、接地接零测试点阻记录、计量仪鉴定报告、整定通知单与整定记录。
(三)消防工程应配套完善。包括完整的消防器材、消防设备材料报批表、阀门解体检查表、烟感器、喷淋头抽样性能检验报告、消防安全通道的安全与宽敞。
(四)空调系统应完善。包括空调系统的整体测试报告、风洁净测试报告、风口的风压检测报告、冷冻水系统检测报告、管道压力检测报告、接地接零电阻检验记录、绝缘电阻测试报告、水管焊接记录、管道防腐蚀验收报告、水、风管道保温性能隐蔽验收报告。
结语:综上所述,对于建筑装饰工程来说,要在保证施工质量的基础上,实现真正意义上的经济效益与社会效益,就必须从施工前、施工中、施工后的各项技术控制要点入手,根据工程实际情况确定装饰工程项目的技术控制要点,并将其编制成为文字记录,从施工前技术图纸交底开始,到施工中关键技术点的掌握,再到装饰隐蔽工程的验收,最后到配套系统的完善都必须将技术控制要点贯穿其中,这样才能在保证施工质量的基础上,在工期进度要求之内完成装饰工程,不管是从装饰施工成本还是建设单位的建设意图上都能达到预期的效果,使建设单位与装饰施工单位真正实现双赢。
参考文献:
[1] 岳希荣,马智永.关于建筑装饰工程技术控制要点的探讨.[J].城市建设理论研究(电子版).2011(26)
[2] 李真,范传丽.建筑装饰工程技术控制要点分析.[J].黑龙江科技信息.2011(15)
电子测试报告范文5
自动化测试系统在敏捷开发、持续集成和持续交付中起着非常重要的作用。它对加快新功能,缩短现场问题解决时间,提升用户感受度,乃至提高企业竞争力都至关重要。本文结合笔者在自动化测试系统建设中的实践,具体描述了利用Python语言设计完成的基于机器人框架,关键字驱动的案例。最后指出了这套系统进一步改进的方向。
【关键词】自动化测试系统 机器人框架(Robot Framework,RF) 关键字驱动 Python
1 自动化测试系统实现简介
笔者参与开发的自动化测试系统,和编译服务器关联,由系统扫描侦测,实现基于某种策略的版本自动下载(最大频度测试,最相关版本测试,如包含本测试组发现的软件缺陷版本优先,或指定版本测试等),然后分发到相应设备,进行版本升级安装,触发测试用例的运行,生成测试报告,发送邮件给项目干系人,更新测试记录等。
自动化测试系统,能实现在第一时间触发测试,能更频繁地测试各个版本,能运行更多、更繁琐的测试,进而在缺陷出F时及时发现,帮助开发团队缩小缺陷出现的代码范围,便于定位问题,解决问题,这为敏捷开发持续集成,持续提供了强有力的支撑。
自动化测试系统,基于机器人框架(robot Framework,RF),RF有丰富的库,使用关键字驱动技术,可以实现循环,选择等逻辑,测试用例中支持变量的使用,测试人员可以创建自己需要的关键字,具有很大的灵活性和可扩展性,可以实现定制的复杂或特殊的功能。ride 是RF的编辑工具,测试用例可以用表格输入,使得测试人员以类似于自然语言的方式(关键字)来描述测试用例, 即使没有编程基础的测试人员也容易上手,而RF会将关键字转化为测试动作(底层即Python类方法,函数的调用)。
Python是一种面向对象、解释型、跨平台的高级程序设计语言,可以应用于自动化测试,数据分析等众多领域,Python用代码缩进来代替花括号,表示语句块逻辑层次,既使得源程序风格接近,又提高了可读性;Python的类库齐全并且产出率高,实现相同的功能,Python 比很多其他语言代码量少,这意味着易维护,出现问题的概率也下降。RF就是一种基于Python的可扩展关键字驱动的通用自动化测试框架。
2 Python语言在自动化测试系统中的应用
利用RF编写定制的测试用例,需要开发自己的关键字,编写自定义python库。下文通过一个实例来介绍这个过程。
首先,在python安装目录c:\Python27\Lib\site-packages\下新建一个文件夹NewUE,文件夹名就是库名,然后,在该文件夹内创建一个python文件ueclass.py,代码中定义一个UEClass类,类中定义了一个ue1Behavior方法,该方法即RF中的新关键字。
在NewUE文件夹内再创建文件名 __init__.py 文件,RF通过这个初始化文件获取新关键字类。它的类名和库名相同, 括号里的类是ueclass.py中定义的类:
fromueclass import UEClass
classNewUE(UEClass):
ROBOT_LIBRARY_SCOPE = 'GLOBAL'
自定义的NewUE库就创建好了,在RF的编辑器ride中导入这个库,然后即可使用新创建的关键字。如果要新增关键字ue2Behavior,只要在UEClass类中增加名为ue2Behavior的方法即可。
导入新库,若库名显示为黑色,表明导入成功,若红色则表明导入失败。可以通过在一个python文件中import NewUE来调试,通常可以根据出错消息提示框,排除源文件中的错误。修正错误后,把原来的 *.pyc 全删除,运行如下命令编译,然后重新导入:
python -m compileallueclass.py
python -m compileall __init__.py
如图1所示。
自动化测试系统的理想目标是全自动,在策略和任务定义好后,免予人工干预。为达到这一目标,需要实现RF和其他系统的配合。下文介绍在这套系统中开发的三个重要模块:下载,定制测试报告,邮件分发模块。
编译随时可能完成,系统需要有自动下载功能(关键字Auto_DL)以免浪费时间, 基本的过程如下, 首先系统处于空闲状态,即还未开始测试或上次测试任务已完成, Auto_DL会定时登录到指定服务器,检测是否有新版本编译完成,并判断该版本是否可用:按上文提及的某种特定的策略选择新版本,判断该版本是否符合自动化测试的最低要求,例如已通过冒烟测试,通过则可下载该版本,退出Auto_DL, 触发下一个环节,升级安装该版本。这个过程循环往复,以达到尽快测试符合策略的版本或尽可能多地测试各种版本等目的.本系统用Python 自带的标准模块urllib2, re实现新版本侦测和判断是否为可用版本,发送HTTP request,在获取的返回信息中,利用正则表达式标准模块re中的搜索函数findall和符合指定特征的正则表达式判断是否需要下载新版本;用Python 自带的标准模块ftplib实现文件下载, 直接导入ftplib,生成一个FTP对象,连接到ftp服务器, 以写模式在本地打开接收文件, 接收服务器上的文件并写入本地文件,最后关闭文件,完成下载工作。
下载完成后,系统自动安装并执行测试用例。RF能产生测试报告,但是无法定制测试报告,新开发的定制测试报告模块就是根据测试管理团队的特殊要求,提供符合需求的报告, 可以包括测试团队名字,测试时间,测试环境的硬件配置,软件版本信息, 测试用例运行结果汇总情况, 是否更新测试记录或需要进一步分析等。测试结果由网页和附件的形式发送给指定接收人。同时,除了测试结果文件,还提供超链接,可以查看测试日志等,特别是当测试用例失败后,测试人员可以进一步分析日志,确定是哪个领域出现了软件缺陷,对应的开发人员也可以根据日志,修正软件缺陷,提供新版本给测试人员再次验证。
定制报告生成后,需要发送测试结果,邮件发送模块利用Python 自带的标准库,smtplib, configparser, email等。为把数据和业务逻辑分离, 通常把邮件服务器地址,用户名,密码,发件人等写入配置文件, 在主程序中这些信息由configparser来解析,可以把主机名传递给SMTP构造函数,然后用smtplib.SMTP()创建一个smtp对象,用smtp.login()进行登录操作, 最后用smtp.sendmail()l送邮件,用smtp.quit()方法关闭连接。
Sendmail(sender,recipients,message)方法可用于发送电子邮件,参数Sender,recipients分别是邮件发送者和接收者地址列表,从配置文件中读取,参数Message是一个长字符串格式的消息,本模块中将网页形式的测试报告解析后作为邮件正文发送给接收方。创建MIMEMultipart对象,获取邮件主题等信息,创建MIMEText对象,读取网页文件内容,再用MIMEMultipart对象的attach,把网页文件内容包含到MIMEMultipart对象中。Sendmail()方法最终完成邮件发送。
改进方向:
本测试系统主要是回归测试,不可能完全取代手工测试,有些情况下不适合自动化测试,例如探索性测试,软件版本很不稳定,测试仪表未提供脚本控制接口等。产品新的功能开发完成后,一般先经手工测试,所以通常自动测试比手工测试发现的缺陷要少些,但由于RF的可扩展性,我们可以方便地将新测试用例加入到自动化测试系统里来,不断提高该系统的测试覆盖率。
另一方面,可以进一步提高自动化测试系统的智能,实现对日志文件的分析。测试专家了解预期测试结果,熟悉日志和缺陷的映射关系,根据日志可推断可能的错误分支,出错模块等。本系统拟增加日志分析模块,用于替代人工判断,利用Python强大的文本分析和正则表达式搜索功能,结合业务知识及测试专家的经验,对失败的测试用例日志进行分析,由系统给出日志分析结果。
3 结论
本测试系统主要用于发现已知的缺陷,确保新功能加入后原有功能不受影响。同时,由于自动化系统很方便进行相同测试用例的大量重复,进而可能发现手工测试不易检出的偶发问题。
由于新关键字易于扩展,随着产品功能的不断增加,测试用例集合也可以不断地扩充。由于RF的可扩充性,可以在自动化测试系统中增加新的模块,进一步提高系统的智能,大大提高测试效率并降低测试工程师重复劳动的强度。测试人员把精力放在深入理解业务逻辑,设计新测试用例,再把新用例应用于自动化测试系统中,进而形成测试工作的良性循环。
电子测试报告范文6
关键词:云智慧测试技术 测量 监测
中图分类号:TN714 文献标识码:A 文章编号:1007-9416(2015)09-0000-00
1云智慧测试概述
1.1主要构成
云智慧测试系统主要由三大部分构成:(1)云智慧前端采集硬件系统:设置在测试一线的前端采集硬件,和智能传感器建立直接联系,以嵌入式系统为依托,不需和电脑连接便能够通过独立形式实现对各类信号的自动采集以及相应的预处理,并经由网络传输数据[1]。(2)云智慧测试服务软件系统:设置在互联网云计算中心,其主要功能是向前端采集硬件系统提供控制命令,接收反馈信息,并进行相应的处理,最终形成和输出测试报告。(3)人机交互的移动终端设备:用户利用终端设备可实现对前端采集硬件系统的实时操控,并从云计算中心得到测试数据。技术小组以终端设备为工具来访问和监控整个系统。
1.2特点、发展以及存在的问题
云智慧测试技术将虚拟设备、云计算技术、物联网等有机结合到了一起,表现出下述特点:(1)数据采集:具有超宽量程特点的变幅基同时运行,双核、多核二十四位A/D以及各种嵌入式系统并行,拥有可观的存储容量[2]。(2)计算部分:DAQ数采前端嵌入式实现了和云计算之间的有机结合。(3)多种算法软件的结合应用,使得云智慧测试系统更加高效、准确和智能。
云智慧测试技术目前正朝着规模化的方向不断发展,陆续形成了不同形式的云智慧中心,常见的如云智慧测试与控制、云智慧教育中心以及云智慧交通中心等[3]。
云智慧测试技术正处于迅速发展之中,然而相关问题也不断暴露在人们面前,如信息安全问题、知识产权保护问题、互联网网速问题等。如何更快更好地解决上述问题成了业界人士的热点研究之一。
2云智慧测试的基本工作流程
对于云智慧测试而言,其基本工作流程如下所示:云智慧测试设备的各个组成部分分别设置在世界的不同地方,均通过计算机互联网连接在一起。用户只需拥有可以联网的终端设备(常见的如笔记本等),不需要下载和安装任何软件,便可以通过浏览器实现对云计算中心的随时随地访问,向其传输一系列测试参数,并对启停指令等进行相应设置。云计算中心将相关指令经由网络提供给工作一线的前端采集硬件系统,该系统接收到相关指令之后,便会利用嵌入式系统启动和运行AD硬件实现对信号的自动采集,然后提供给DSP进行实时处理,最后汇总测量信息,将其传输给云计算中心,由云智慧测试服务软件系统负责信息的收集以及存储,并进行分析和融合,生成用户所需的测试报告,最终经由网络传输给用户[4]。
3测量与监测应用
3.1现场测量
在很多现场测试工作中,云智慧测试技术展现出了传统方法所不具备的优势,如不良环境中的远程在线测量、大规模试验中集体配合操作多台设备、远程实时指导等。
以高铁路轨测试工作为例。在测试工作中,技术人员有时无法靠近待测设备,只能在比较短暂的停运间隙对相关测试设备进行安装,然后远离。这一类大规模的试验往往需要同时安装数台甚至数十台采集设备,同时需要大量的人员参与,涉及交叉作业问题,以及大量数据的及时收集和有效处理问题。当列车投入运行之后,测试工作往往要维持数十天,该期间技术人员虽然无法进入测试区域,但能够及时且有效地搜集最新测量数据,然后进行相应的加工,并生成每天的测试报告。运用云智慧测试技术的过程中,前端采集硬件系统经由3G并入计算机互联网,当列车从设备旁边经过时便进行自动式的数据采集,然后传输给云计算中心接受预处理以及存储。技术人员仅需通过笔记本上网进入云计算中心,找到最新测试数据,加以整理生成报告即可。除此之外,技术人员被安排到了不同的测试组,同时每个人拥有不同层级的权限,每位技术人员在本身权限范围内执行相关操作(如修改采集设备的运行参数、查看和处理相关数据等[5]),如此一来,可实现多人模式下有条不紊的交叉操作。
3.2大型监测
云智慧测试技术现阶段已经广泛应用于多个领域的监测工作,如对风电等机械装置进行监测,对桥梁等大规模结构的健康状况进行监测。在精简现场布线等方面,云智慧测试技术展现出了极大的优势,另外,云计算中心拥有的数据融合技术能够高效汇集不同类型的数据信号,从而为评估结果的及时性和准确性提供了有力保障。值得一提的是,云智慧测试技术拥有比较优异的监控能力,支持随时随地在线监控,各级相关人员只需拥有一台简单的互联网终端设备(如笔记本、智能手机等),便可以在任意时间和地点实时获取某台装置的监测数据,相当便捷、高效。
4结语
总而言之,随着科技水平的不断提高,基于互联网以及云计算技术的第五代测试技术云智慧测试技术得以迅速发展,并广泛应用于不同领域,发挥出了相当重要的作用。
参考文献
[1]应怀樵,沈松,葛宝珊,李旭杰.基于LXI与CXI总线的云智慧测试技术[J].国外电子测量技术,2013,05:10-15.
[2]沈松,应怀樵,葛宝珊,吕伟,杜峰,郝磊. 云智慧测试技术与应用[J].振动测试与诊断,2013,S1:202-205.
[3]吕治江.云计算技术在鞍山市物联网建设中的应用[D].辽宁科技大学,2012.
[4]鲁鹏.云计算中加密的多关键字检索技术研究[D].上海交通大学,2014.
[5]魏艳伟.基于传感网的智能家居技术研究[D].北京理工大学,2015.