前言:一篇好文章的诞生,需要你不断地搜集资料、整理思路,本站小编为你收集了丰富的测试方案和测试报告主题范文,仅供参考,欢迎阅读并收藏。
关键词 继电保护;测试技术;应用
中图分类号:tm774 文献标识码:a 文章编号:1671—7597(2013)051-054-01
在很长的一段时间里,我国的电力系统大都是采用移相器、调压器、滑杆电阻等来调整三相电压和三相电流的幅度和相位大小,以达到对各种继电保护装置进行调试的目的。在这个调试的过程中,同时还需要极其精密的电压表、电流表、相位表、频率计以及毫秒表等仪器设备完成对于试验所需物理参量的读取,整个过程的操作较为复杂,并且对于所测量物理量的精度要求较高。采用这种传统的测试方法,一方面设备的搬运工作极其艰巨、设备占用空间大,并且在测试过程中需要人工反复记录实验数据。这种传统的方法不但调试的技术落后、测试过程复杂、测试误差较大,而且还会在测试过程中消耗大量的人力物力。伴随着目前新型继电保护装置的应用,基于计算机的自动测试技术已经成为继电保护设备测试不可或缺的一部分。
1 继电保护测试技术的发展
继电保护测试技术主要经历了组合型试验装置、集成电路型试验装置以及数字控制型试验装置。其中组合型的试验装置是将各个物理参数通过不同的装置分别进行测量,然后将测量结果进行组合,得出继电保护的测量结果,是一种传统的试验装置;集成电路型试验装置是在组合试验装置的基础上,采用集成电路芯片对测试装置进行控制,并且采用数码显示的方式,提高了测试数据读取的准确性和简便性;数字控制型试验装置主要是利用单片机的计算存储功能,并且具有一定的用户交互界面,是继电保护测试技术的重要发展。
基于计算机的继电保护测试装置由人机对话设定输入电流、电压参数值,并且通过程序控制信号源实现对电子线路、数模转换、功率放大等功能,并且向继电保护装置输出具有一定功率值的三相电流、电压源,同时能够接受来自继电保护装置的反馈信息,并且根据预先设置做出一系列的响应,对结果进行详细的记录,同时能够将测试的结果以文字或者图标的形式进行打印,真正的实现自动化测试的目标。
2 继电保护自动测试系统的功能及应用
2.1 继电保护自动测试系统的功能
目前的继电保护自动测试系统可以实现的功能主要有以下几个方面。
1)根据实际的继电保护测试需要进行测试,并且能够保证测试数据信息的准确性。这也是继电保护自动测试系统最基本的功能,是实现其他功能的基础。
2)实现在检点保护测试中的良好人机交互界面。在实际的继电保护测试过程中,操作人员可以根据测试系统交互界面的提示进行操作,并且可以按照系统给出的提示信息判断测试的过程是否合理以及测试的结果是否在误差范围内,可以有效的降低测试的难度和复杂度。
3)实现整个测试过程的自动化处理。在整个继电保护测试过程中,自动化测试系统可以在无人值守的情况下完成测试的全部流程,并且最终到处需要的测试数据。整个测试过程,只需要操作人员对门限定制进行设定和确认,减少了人员的工作强度,也从根本上提高了继电保护测试的精确度。同时降低了对操作人员的要求,降低了测试的成本。
4)自动化生成所需要的检测数据和检测报告。继电保护自动检测系统能够根据预先设定的需求,自动的在检测过程完成后到处测试的数据,并且可以生成完整的测试报告,真正的实现了整个测试过程的自动化,节约了操作人员用于编写测试报告以及整理的时间。
2.2 继电保护自动测试系统的应用
继电保护自动测试系统的具体应用主要包括后台软件的启动、测试模板的导入、测试过程以及继电保护装置的启动。其实现过程如图1所示。
3 继电保护测试技术应用的意义及其要求
3.1 继电保护测试技术应用的意义
继电保护自动测试技术的应用能够大幅度改善了继电保护测试,是对目前的继电保护测试思路的重大突破和创新,它的应用能够有效的提高继电保护测试的精确的,提高继电保护测试的自动化水平,较少测试过程中人员的直接参与,可以从根本上减小继电保护测试的误差。同时,继电保护的自动化测试技术能够实现对于测试
结果的自动化处理,并且可以根据操作人员的要求生成完整的测试报告,这能够大幅度的提高继电保护测试的工作效率,降低整个测试过程中的成本消耗。从继电保护测试过程到测试报告的自动生产都实现了高度的自动化,也是目前继电保护测试技术发展的趋势。
3.2 继电保护测试技术的要求
在继电保护测试过程中,为了更好的保证测试结果的准确性,进一步提高继电保护测试系统的工作效率,需要在测试过程中注意以下几个方面的问题。
1)在确定测上方案前需要对测试方案进行多次可行性分析。由于整个测试过程都是在自动化模式下完成的,因此,测试方案一旦确定就无法进行更改,错误的测试方案会导致严重的后果。需要在测试方案的确定前组织相关的人员进行多次方案的可行性论证,确保方案的可行性。
2)加强员工模板导入技术的培训。在整个继电保护自动化测试系统中,唯一需要操作人员的步骤就是方案模板的导入工作,这也是最为关键的一步。因此,要做到操作人员对于模板导入工作的培训,并且需要在正式上岗操作前进行严格的考核,切实保证测试数据的准确性。
4 结束语
继电保护自动测试技术的应用是对继电保护测试的重要技术革新,能够有效的提高继电保护测试的精度。同时,继电保护自动测试技术能够降低对于操作人员的素质要求,能够降低企业的成本。因此,在继电保护测试中要加大自动化程度的开发力度,更进一步提高测试的精度。
参考文献
关键词:软件测试;性能测试;LoadRunner
中图分类号:TP306 文献标识码:A 文章编号:1672-3198(2009)12-0296-02
1 软件性能测试
根据测试的目的和内容的不同,性能测试主要包括以下方面:
(1)负载测试:确定在各种工作负载下系统的性能,目标是测试当负载逐渐增加时,系统各项性能指标的变化情况。
(2)强度测试:确定在系统资源特别低的条件下软件系统运行情况。
(3)容量测试:在用户可接受的响应范围内,确定系统可处理同时在线的最大用户数。
(4)压力测试:通过确定一个系统的瓶颈或者最大使用极限的测试。
(5)疲劳强度测试:以系统稳定运行情况下能够支持的最大并发用户数或者日常运行用户数,持续执行一段时间业务,通过综合分析交易执行指标和资源监控指标来确定系统处理最大工作强度性能的过程。
(6)大数据量测试:大数据量测试侧重点在于数据的量上,包括独立的数据量测试和综合数据量测试。独立的数据量测试针对某些系统存储,传输、统计、查询等业务进行大数据量测试,而综合数据量测试一般和压力性能测试、负载性能测试、疲劳性能测试相结合。
2 软件性能测试流程
2.1 测试方案设计
在软件性能测试的初始阶段,首先应对业务模型和系统架构进行调研,收集测试需求。然后生戚性能测试计划。业务调研和系统调研,需要性能测试团队提前了解被测试项目的业务功能和系统架构。其间。开发部门应协助提供被测系统相关的文档和说明,如系统总体介绍、系统规格书、用户使用手册、网络拓扑结构图和系统配置说明、关键服务器及应用部署与配置等文档。通过和业务部门协商明确本次测试针对哪些业务行为,制定此次测试的目标,细化测试的关注点和性能指标要求。通过以上内容制定详细的测试方案,并制定详细测试计划和各阶段目标。
2.2 测试环境的搭建
测试环境的搭建分为软硬测试系统的环境搭建和测试相关的数据准备工作。环境搭建包括被测试系统的硬件环境建立和软件应用系统建立及基础数据环境建立。保障被测试系统的业务可用性和功能的正确性,包括测试系统(如被测试项目的操作系统、中间件、数据库、压力测试控制台、压力测试发起工具等)的环境搭建、软件的安装;测试环境的网络环境建立(如开放防火墙和网关等);最后进行测试环境可用性验证。测试数据准备包括测试应用系统基础数据准备,即需要按性能测试规模要求,准备足够的、一定规模的基础数据,通常采用全量恢复生产数据的方式以达到和生产环境数据一致性的要求。
2.3 测试场景开发
测试场景开发指测试程序(脚本)的开发。测试程序(脚本)的开发是对被测系统的用户业务行为进行模拟、录制、编程、参数化、脚本定制和调式等一系列工作,以使测试程序(脚本)可以真实模拟实际生产中的业务交易行为,并通过对程序中参数的配置实现对并发数、思考时间等属性的准确控制。
2.4 测试执行
测试执行是在测试方案的制定、测试环境准备、测试场景开发工作正确完成的基础上进行的。
2.5 测试报告和分析
性能测试报告和结果分析是在测试执行完成以后,对性能数据进行采集结果收集工作和针对性能测试过程中暴露的问题进行分析的阶段。性能测试报告是对性能测试过程中的监控结果以及报表进行汇总,按照一定的模板整理出的一份结论性文档。开发团队和性能测试团队应依据对性能测试实施过程中监控和记录的数据和表格,分析系统中存在的性能问题和程序缺陷。并有针对性的在报告中阐述问题、分析原因、提出解决或优化方案。
2.6 回归测试
回归测试是开发部门在性能测试报告的基础上针对软件的性能或者效率缺陷进行优化或者修复,为了验证优化的效果而进行的再测试。
3 软件性能测试工具LoadRunner
作为软件质量控制中的重要一环,性能测试已经越来越受到软件开发商和用户的重视,成为软件测试的重中之重。性能测试通常在系统测试阶段执行,常常与强度测试结合起来,一般需要使用测试工具。一个优秀的软件测试工具,不仅可以辅助测试工作,满足科学测试的基本要求;而且可以自动化测试过程,节约大量的时间、成本、人员和资源,提高软件产品的质量。目前市场上主要使用的测试工具有微软公司的WAS(Web Application Stress Tool)、Compuware公司的QALoad、RadView公司的WebRunner、HP(Mercury)公司的LoadRunner。下面以LoadRunner为例。介绍软件测试工具的工作流程。
LoadRunner是一种预测系统行为和性能的负载测试工具。通过模拟上千万用户实施并发负载及实时性能检测来确认和查找问题,能够对整个企业架构进行测试。通过使用LoadRunner,企业能够最大限度的缩短测试时间,优化性能和加速应用系统的周期。LoadRunner能支持广泛的协议和技术,功能比较强大,可以为特殊环境提供特殊的解决方案。LoadRunner由下面三部分组成:Virtual UserGenerator用来录制脚本、编辑脚本Controller用来布置测试场景、执行测试场景;Analysis用来对测试结果进行分析。
用LoadRunner进行负载测试的流程通常由五个阶段组成:计划、脚本创建、场景定义、场景执行、监视执行和结果分析。
(1)计划负载测试:定义性能测试要求,例如并发用户的数量、典型业务流程和所响应时间;根据软件项目相关需求,定义相关测试的细节,撰写性能测试报告。
(2)创建Vuser脚本:将最终用户活动捕获到自动脚本中LoadRunner的脚本是C语言代码,LoadRunner有自己的一整套函数接口,可以供外部调用。脚本可分INIT、ACTION、END三部分,其中:INIT部分可以理解为初始部分。ACTION可以理解为事务部分,也是测试的主体,END是退出结束。
当录制完一个基本的用户脚本后,在正式使用前我们还需要完善测试脚本,增强脚本的灵活性。一般情况下,我们通过以下几种方法来完善测试脚本。插人事务、插入结合点、插入注解、参数化输入。
(3)定义场景:使用LoadRunner Controller设置测试环境;录制好脚本之后,就可以把脚本加入到场景里面去了,这里首先介绍一下LR的场景类型,LR有2种大的场景类
型。
①Manual Scenario:该项要完全手动的设置场景,这项下面还可以设置为每一个脚本分配要运行的虚拟用户的百分比,可在Controller的Scenario菜单下设置。
②Goal―Oriented Scenario,如果你的测试计划是要达到某个性能指标,比如:每秒多少点击。每秒多少transae,tions,能到达多少VU,某个Transaction在某个范围VU(5D。一1000)内的反应时间等等,那么就可以使用面向目标的场景。
(4)设置场景:
Design:设计测试场景的静态部分,设置模拟用户生成器、模拟用户数量、模拟用户组等。
Run:设计测试的动态部分,主要指添加性能计数器,在脚本运行的过程中可以通过这些计数器反馈的数据。
建立了测试场景后,我们可以对Edit_Schedule进行设置,设置测试开始执行的时问,对于手动设计的测试还可以设定它的持续时间,以及何时起用或禁止调用模拟用户。
(5)运行场景:通过LoadRunner Controller驱动、管理和监控负载测试。
设置完毕后,点击“开始方案”运行场景。在运行过程中,可以监视各个服务器的运行情况(DataBase Server、WebServer等)。监视场景通过添加性能计数器来实现,下列数据需要特别关注:
①Memory:Available Mbytes物理内存的可用数(单位Mbytes)至少要有10%的物理内存值。
⑦Processor:Processor Time CPU使用率。这是查看处理器饱和状况的最佳计数器。显示所有CPU的线程处理时间。如果一个或多个处理器的该数值持续超过90%,则表示此测试的负载对于目前的硬件过于沉重。为多处理器服务器添加该计数器的O到x个实例。
③Processor Queue Length:是指处理列队中的线程数,小于2。处理器瓶颈时会导致该值持续大于2。
④Context Switches/sec;如果切换次数到5000*CPU个数和i0000*CPU个数中,说明它忙于切换线程。
⑤Network Interface:Bytes Total/sec为发送和接收字节的速率,包括帧字符在内。判断网络连接速度是否是瓶颈,可以用该计数器的值和目前网络的带宽比较。
关键词:RFID;自动测试;数据库;物联网
中图分类号:TN92 文献标识码:A 文章编号:2095-1302(2016)11-00-02
0 引 言
随着物联网产业的发展日益壮大,无线射频识别(Radio Frequency Identification,RFID)技术已经在人们的日常生活中得到广泛应用,其测试与检测技术也在不断发展与完善。为了满足逐步增长的批量检测需求,提高测试人员的工作效率,保障测试结果的准确性和可重复性,RFID自动测试系统也成为研究热点之一。
RFID自动测试系统的主要功能是提供RFID射频指标的自动测试,通过计算机软件实现对测试设备和被测设备的高效控制,模块化软件设计使得测试流程集成化,可最大程度的降低测试人员的工作量与操作复杂度[1]。
1 系统介绍
RFID自动测试系统的主体是测试软件。该测试软件具有自动控制测试设备、数据采集、数据分析处理和生成报告的功能。测试软件可以与测试设备、被测设备的控制软件通信,自动读取仪器型号、软件版本、选件版本、仪器基本设置等信息,还可调用或驱动测试设备、被测设备的控制软件,测试人员可以方便的在测试软件上直接对测试设备与被测设备的控制软件进行设置并发送命令。测试软件中预置了常规RFID测试模板,用户可以根据测试需要编辑测试模板,调用、组合预设的测试项目,灵活定制测试计划。在测试过程中,测试人员可以同步在测试软件的界面上看到测试结果并保存。数据库中记录了所有测试信息,可以方便的查询浏览。测试结束后,系统自动生成测试报告供测试人员浏览与打印。
RFID自动测试系统的基本情况如下:
(1)硬件:计算机、泰克实时频谱分析仪RSA3408A、GPIB卡、射频电缆、衰减器及其他测试配件。
(2)软件:RFID自动测试系统软件、泰克实时频谱分析仪控制软件RSAVu、Agilent IO libraries套件、读写器控制程序。
(3)测试项目:输出频率、输出信号频谱模板、载波频率容限、占用带宽、发射功率、邻道功率泄漏比、杂散发射、最大驻留时间、读写器数据编码、射频包络、前同步码和帧同步。
2 系统结构
计算机通过GPIB总线、网线与RSA3408A频谱仪相连。其中,频谱仪与频谱仪控制软件通过网线通信,频谱仪与自动测试系统通过GPIB总线通信。读写器通过控制线路与计算机相连,控制线路可以是网线、串口通信线等。读写器天线的输出端口通过射频线缆、衰减器与频谱仪的射频输入端相连。
RFID自动测试系统硬件连接图如图1所示[2]。
3 软件设计
RFID自动测试系统采用通用的small talk模型,分为表示层、控制层、数据层。
(1)表示层为显示逻辑部分,实现与测试人员的交互功能;
(2)控制层为事务处理逻辑部分,进行控制命令发送和数据接收、处理;
(3)数据层为数据存储逻辑部分,主要功能是数据的存储和读取[3]。
RFID测试系统的软件包含以下部分:
(1)测试软件。在开发过程中,表示层和控制层作为系统的应用软件联合开发,能够控制关联的其他程序如频谱仪控制软件、读写器控制程序等,还可实现与用户的交互功能。
(2)数据库。数据库即逻辑模型中的数据层。用以存储测试模板、测试项目、测试参数等基本信息和测试数据。
(3)必需组件。链接软件与数据库的动态链接库、与仪器控制软件之间交互的测试驱动程序等。
模块设计以及调用流程如图2所示。
根据系统要求,测试系统的前端软件,即界面部分的开发工具采用.NET Framework与C#,后台数据库采用小型数据库Access。程序驱动采用C#封装仪器厂商提供的远程控制命令,并采用Agilent公司的IO library进行GPIB控制。这样可以避免程序接口与测试主程序不兼容的问题。RFID自动测试系统的流程图如图3所示。
4 数据库设计
数据库是整个系统的核心部分之一,负责存储预置的测试模板,其中包含默认的测试项目、测试参数、性能指标等信息,在测试过程中存储测试数据和经过数据处理的测试结果,支持测试人员对各类信息的查询、浏览与调用。
数据库的建模通常由实体关系图(E-R图)入手。E-R图是指以实体、联系、属性3个基本概念概括数据的基本结构,从而描述静态数据结构的模式。
在RFID自动测试系统中,软件定义的主要数据如下:
(1)测试项目表
内容:存放所有测试项目,每个项目都有对应编号。
说明:分为两张表,一张存放主测试项目,一张存放子测试项目,两者之间通过编号可以相互查询与对应。
主键:项目序号。
(2)性能指标表
内容:用上下限的方式存放测试数据的最大允许误差或性能指标。
说明:每个测试子项目的最大限值与最小限值分两列保存。对于同一个测试子项目,不同制造商的指标可能各不相同,即使同一制造商生产的仪器因型号不同,装载了不同选件,其性能指标也可能不同,需要编号分别存储。
主键:无。
(3)被测仪器信息表
内容:记录设备制造厂商、型号规格、出厂编号、控制软件版本、选件版本等信息。
说明:该表的数据内容一部分可以通过仪器控制程序直接读取,一部分需要测试人员在测试界面直接输入。仪器的制造商、型号、选件版本等和仪器的性能指标表相关联。
主键:出厂编号。
(4)测试参数信息表
内容:记录各测试项目在测试时设置的参数名称与限制要求。
说明:与测试项目表相关联,每个大项建立一张表格,大项包括许多子项目,子项目的名称放入参数信息表中。测试项目的参数表格中放置测试的设置信息,例如杂散测试中存放起始和终止频率范围,邻道功率泄漏比中存放主信道和相邻信道的频谱宽度。当程序运行到所选的测试项目界面时,被选中的测试项目的参数信息会显示出来并赋值给相应的变量。
主键:无。
(5)测试报告记录表
内容:记录生成的测试报告信息,包括报告编号、测试环境、测试设备等。
说明:生成报告时需要测试人员填写报告的基本信息。
主键:报告编号,每生成一份,自动加1。
(6)测试结果XML表
内容:XML表中记录设备的制造商信息、测试日期、测试结果。测试结果包括合格判定,即测试通过/未通过。
说明:每台设备的测试数据生成一个XML格式表格,保存在XML结果文件夹中。XML表由两层书签构成,第一层书签记录测试基本信息,第二层书签记录测试项目的结果数据。标签的属性值记录测试项目是否通过。
主键:XML文件无主键。
5 结 语
本RFID自动测试系统可以自动完成对大部分射频指标的测试工作,提高测试人员的工作效率,降低测试复杂度,保证测试结果的准确性与可重复性。此外,模块化的软件设计还具有扩展性强,可移植性高等优点,根据检测任务的需要,还可以扩展连接更多的测试设备,进一步扩展测试项目。
参考文献
[1]刘岩.RFID通信测试技术及应用[M].北京:人民邮电出版社,2010.
关键词:软件测试;项目实训;实践教学;人才培养
作者简介:吴梦麟(1982-),男,江苏南京人,南京工业大学电子信息与工程学院,讲师。
中图分类号:G642.44 文献标识码:A 文章编号:1007-0079(2013)14-0126-02
近年来,随着中国内需市场的增长和国内外外包企业的合作加深,我国的软件外包行业得到了迅速发展。软件测试作为软件外包的主营业务之一,是加快软件企业与国际接轨,实现产品国际化的重要手段。随着软件开发流程的系统化和规范化,我国软件企业对软件测试的需求逐步增大,因此高校计算机专业中的软件测试人才具有良好的就业前景。
由于软件测试工作的特殊性,需要从业者不仅掌握一定的软件技术,同时也要对软件测试的方法和流程具备相当的经验。通过高校教育培养出来的计算机专业应届毕业生,虽然能够掌握基本的软件开发技术和软件测试理论,但是缺乏实际的测试经验和相应的行业背景知识,离企业的需求尚有一定的差距。目前高校计算机专业中软件测试教学仍以理论为主,实践动手能力和项目背景经验的培养相对不足,这些矛盾导致学生就业时很难适应企业的用人要求,企业也必须对招入的应届毕业生进行培训,花费相当的人力和物力。
项目实训是解决高校和企业之间供需矛盾的有效手段。在日常教学计划中引入项目实训,以实际测试任务为驱动,按照企业规范进行流程管理,让学生掌握测试过程中各阶段的技能,理论联系实践地接受企业化的锻炼。通过实训课程,使学生不但能够学习到实际测试经验,而且能够增强团队意识,进一步缩小毕业生与职业测试工程师之间的差距。
一、软件测试项目实施
1.测试项目简介
本文所述的软件测试实训项目是基于校企共建模式,由南京工业大学(以下简称“我校”)软件外包实验室提供软件测试的场所和专用的硬件设备,从合作的软件公司引入相应的测试平台、管理流程和测试报告文档的测试项目。
本项目的内容是针对前期开发的教师管理系统进行测试。该系统是教学部门的业务管理支撑系统,测试主要围绕教师信息的查询和更新操作的管理。通过对这些功能模块的测试,增强系统的易用性、稳定性、可配置性,消除信息孤岛,进一步提高数据信息的应用水平。
在测试环境搭建过程中,服务器的软硬件配置要与该系统的实际运行环境保持一致。对于测试计划、测试方案和测试用例等文档的修改、更新操作,则采用svn版本管理工具来进行控制。学生可以通过svn服务器平台,按照进度提交每日的测试用例文档,并填写日志记录测试进度和每天的测试工作。
2.实训计划和人员管理
软件测试实训安排在我校外包实验室中进行,采用与企业相同的管理模式集中训练,由相关教师和企业工程师来指导测试流程。测试团队的成员来自于我校电子与信息工程学院计算机专业的大三、大四学生,以及对软件测试感兴趣的相近专业的学生。这些学生具备基本的软件编程能力,并且对测试的基本理论有一定的了解。根据学生自身水平和对项目的熟悉程度,可以将其划分为不同角色,其中包括开发人员和测试人员。开发人员由原来参与系统开发的部分学生担任。测试人员可以分成不同的小组测试不同的模块,每个小组设置一个测试组长,负责测试项目管理,其余组员则负责执行测试用例,各小组都有一名教师作为指导教师,控制模块的测试进度。整个测试实训项目安排在假期进行,用时半个月,每天工作8小时。每天早晨由测试组长安排当天的测试任务,并对前一天的测试结果进行总结。在每个时间节点,由指导教师和小组成员对相关测试文档进行评审。
3.测试项目进程
本项目的实际流程图如图1所示,在项目初始阶段,担任开发人员角色的学生叙述产品需求和业务流程,为编写测试计划做准备。该测试项目主要分为5个阶段:测试计划制定、测试方案编写、测试用例设计、多轮系统测试和测试系统报告提交。每个阶段都力求达到规范化、细致化的测试目标,同时每个阶段都要经过教师和各个组员之间的评审,如果评审通过,可以开始下一阶段的工作;如果不通过,则需要完善后继续评审直到通过。
(1)测试计划制定。在了解了教师管理系统的需求以后,结合学生的基本情况、系统模块数量和测试的周期来制定测试计划。测试计划要涵盖测试的范围和环境、测试人员的管理和测试进度安排。考虑到参与实训项目的学生缺乏相关经验,因此测试计划要重点突出每个测试小组所对应的系统模块,以及测试流程中每个阶段所对应的完成日期。该测试计划由各组组长和指导教师制定,最后需各小组评审后通过。
(2)测试方案编写。测试方案是按照系统需求说明书详细的分析测试的模块,指导后续的测试用例的编写工作,重点在于对模块具体功能的理解和测试对象的分析。在这一阶段,首先由担任开发人员角色的学生来介绍系统模块的基本功能,并以文档的形式向对应测试组成员提交;然后由指导教师以具体测试点为例,介绍详细的测试用例写法;最后,由各组组长将测试任务分配给组员,各组员在理解的基础上开始测试用例的设计。测试方案完成以后由各组组长汇总,并在组内进行评审。
(3)测试用例设计。测试用例的编写是针对各功能模块测试而设计的一组测试输入、执行条件以及预期结果,也是本实训项目的重点内容。在对模块的特性和功能了解的基础上,设计系统的测试点,设计时应考虑角色权限、验证点和测试描述。在设计验证点的过程中,鼓励学生展开讨论,力求做到无疏漏;同时在测试描述时,可以将等价类划分、边界值、错误推测等常用方法与书本理论相结合,通过具体的实例加深学生对所学知识的理解。最终的测试用例以Excel表格形式列出,其中包括编号、重要级别、操作步骤、预期输出和实际测试结果等条目。
(4)多轮系统测试。按照测试用例的具体内容,可以进行多轮的系统测试。根据测试结果,扮演开发人员角色的学生对缺陷进行修改。通过这一过程,不但使学生认识到开发过程中存在的问题,而且积累了开发经验,为今后规范化的编程打下了基础。
(5)测试报告提交。通过半个月的实训,学生经历了规范化的测试流程,测试报告的编写是对测试内容的概括和总结。报告的内容主要有以下三个方面:通过对测试结果的分析,得到对软件质量的评价;总结本次的测试过程,为制定以后的测试计划提供参考;评估本次测试计划和测试执行是否符合规范。通过本次实训,学生普遍体会到从理论知识到实践的过程,明确了规范化的软件测试方法,同时对软件编写中隐含的错误和缺陷也有了一定的认识,为今后的软件开发打下一定的基础。
二、软件测试实训存在的问题和解决办法
本次软件测试实训基本达到了预期的效果,学生不但学到了规范化的测试流程,提高了职业软件素养,而且通过互动和交流,发现了教学中存在的一些需要解决的问题。首先,本次软件测试实训是针对上一次实训开发的系统,离企业的实际系统测试尚有一些差距;其次,参与的学生缺乏实际经验,对软件测试认识不足,导致测试方案和测试用例编写不够规范、完善;另外,相应的管理需要加强,在实训过程中存在迟到、早退以及缺席的现象,从而影响了测试进度。
针对以上问题,在今后的实训过程中,测试项目要尽量切合企业的实际需求,同时在测试方案和测试用例的评审中,要加强教师和学生的沟通,强调测试流程的规范性,可以多鼓励高水平的学生带低水平的学生。另外,可以采取企业现行管理方式对实训进行管理,如引入考勤制度、评审制度等。
三、结语
软件测试是我国软件产业高速发展中需求缺口较大的一个行业,培养具有相关经验和符合企业需求的软件测试人才是目前高校计算机专业需要解决的核心问题之一。本文通过研究软件测试实训项目,探索了软件测试专业人才的培训方式以及在此过程中遇到的问题,对研究校企联合的人才培养模式具有重要意义。
参考文献:
[1]徐瑾.中国软件外包业研究综述与展望[J].经济学动态,2010,(11):75-78.
1.
开发框架
开发的系统中所应用的技术都是基于JavaEE,技术成熟稳定又能保持先进性。采用B/S架构使系统能集中部署分布使用,有利于系统升级维护;采用MVC的开发模式并参考SOA体系架构进行功能设计,使得能快速扩展业务功能而不会影响现有系统功能的正常使用,可根据实际业务量进行部分功能扩容,在满足系统运行要求的同时实现成本最小化。系统采用分布式部署,系统功能隔离运行,保障系统整体运行的稳定性。
图1.开发框架与体系结构图
1.1.
web端技术栈
(1)前端采用elementUI/jquery/bootstrap/vue实现,前端和Controller交换数据基于json格式。
1.2
业务端技术栈
(1)
业务端基于springboot、springMVC、JPA、SpringData技术栈构建,对于复杂的系统则采用springCloud构建。
(2)
四层分隔:controller(Facade)/service/dao/entity,其中façade主要用于生成json,实现和前端的数据交换。
(2)命名:按照功能模块划分各层包名,各层一致。
2.
系统安全保障
2.1
访问安全性
权限管理是系统安全的重要方式,必须是合法的用户才可以访问系统(用户认证),且必须具有该资源的访问权限才可以访问该资源(授权)。
我们系统设计权限模型,标准权限数据模型包括
:用户、角色、权限(包括资源和权限)、用户角色关系、角色权限关系。权限分配:通过UI界面方便给用户分配权限,对上边权限模型进行增、删、改、查操作。
基于角色的权限控制策略根据角色判断是否有操作权限,因为角色的变化
性较高,如果角色修改需要修改控制代码。
而基于资源的权限控制:根据资源权限判断是否有操作权限,因为资源较为固定,如果角色修改或角色中权限修改不需要修改控制代码,使用此方法系统可维护性很强。建议使用。
2.2
数据安全性
可以从三个层面入手:操作系统;应用系统;数据库;比较常用的是应用系统和数据库层面的安全保障措施。
在操作系统层面通过防火墙的设置。如设置成端口8080只有自己的电脑能访问。应用系统层面通过登陆拦截,拦问请求的方式。密码不能是明文,必须加密;加密算法必须是不可逆的,不需要知道客户的密码。密码的加密算法{
MD5--不安全,可被破解。需要把MD5的32位字符串再次加密(次数只有你自己知道),不容易破解;加密多次之后,登录时忘记密码,只能重置密码,它不会告诉你原密码,因为管理员也不知道。
3.
项目计划的编制和管理
本公司项目基于敏捷过程的方式组织,项目计划基于需求和团队反复讨论的过程。在开发系统时都经过了解需求,开需求分析会议,确定开发任务,推进开发进度,测试,试点,交付等开发步骤,其中具体内容有:
1,了解需求:跟客户沟通,充分了解对方的需求,然后对需求进行过滤,最后整体成需求文档
2,需求分析会议:也就是项目启动会议之后要做的事情,对拿来的需求进行讨论,怎么做满足需求。主要对需求进行全面的梳理,让开发,产品,项目都熟悉整个需求。
3,确定开发任务:根据敏捷开发法则,需求变成一个一个功能点之后就是安排开发任务了。根据团队现有的资源合理分配任务,和时间节点
4,
推进开发进度:在开发的实际过程中,注意节奏的把控,注重功能点完成的时间点。
5,
每一个功能点完成之后都会有测试工程师进行单元测试。
6,试点单位进行试用,然后解决问题。
7,交付
4.
项目进度保障体系
4.1制度保障
实行项目经理负责制,建立强有力的开发指挥机构和开发保障体系,投入能保证开发进度如期实现的足够的开发队伍,实行专业化开发。建立从项目经理到各开发人员的开发任务,全面、及时掌握并迅速、准确地处理开发过程中遇到的各种问题。对开发过程中遇到的需求变更进行协调管理,对重大关键问题超前研究,制定措施,及时调整开发的公共类保证开发过程的连续性和高效性。强化开发过程的时间点把控问题,对开发任务实行动态管理。保证在时间点内完成开发任务。实行内部经济承包责任制。使责任和效益挂钩,个人利益和完成工作量挂钩,做到多劳多得,调动开发团队、个人的积极性。编制科学合理的总体开发进度计划,运用专业管理软件,对开发计划进行动态控制;并在总计划的基础上分解明确的月及旬计划,项目经理抓住主要技术难点,严格按计划安排组织开发,重点抓好关键技术的开发。定期检查开发计划的执行情况,及时对开发进度计划进行调整;在开发过程中,根据开发进展和各种因素的变化情况,不断优化开发的方案,保证各开发有条不紊的执行。
4.2开发进度开发工期保证措施
任务分发将利用一流的开发策划、高效的组织、科学的领导和动态的控制,用一流的运作与协调、一流的技术框架与技术、一流的团队素质等来实现一流的管理,从而通过过程控制实现最终产品的精品,满足客户对工期、质量等各方面的要求。
完善的开发计划保证体系是保证项目工期的纲要,掌握开发管理主动权,全面而宏观的控制整个开发的过程,是保证开发进度的关键。通过完善的开发计划保证体系,采用先进的开发计划计算、设计软件,制定出科学合理的开发进度计划。
1.
编制三级网络计划
在开发过程中中我单位将分级编制网络计划来控制整个项目的开发。
(1)一级网路计划
根据项目总工期控制项目各阶段里程碑目标。
(2)二级网路计划
根据各阶段分项业务的工期目标控制分解成分部目标。
(3)三级网路计划
主要技术使用控制周计划和日计划。通过对关键技术开发编制标准业务,建立计划统计数据库,利用项目管理信息系统对工期进行全方位管理。
2.制定派生计划
根据总控工期、阶段工期和分项业务工作量制定出技术保障、商务合同、物资采购、设备定货、人力资源等派生计划,是进度管理的重要组成部分,按照最迟完成或最迟准备的插入时间原则,制定各类派生保障计划,作到各项工作有备而来,有章可循。
工期保证体系框图
技术保证体系
综合保证体系
组织保证体系
技术总监
开发组织设计
技术总监
开发人员
测试人员
试验室
项目经理
制
度
保
证
奖惩制度
岗位责任制
经济责任制
开发团队
单元测试
技术培训
测试用例
开发进度计划保证
月度计划
季度计划
年度计划
技术工作责任制
技术标准
设计文件
招标文件
技术规范
技术工作标准化
开发团队
实现工期目标
4.3施工进度三阶段控制措施
(一)开发进度“事前控制”
1.积极做好业务需求,业务流程等准备工作,为自己尽早投入开发创造好条件,把准备工作做细做充分,确保按时无障碍开发。
2.编制详细的开发进度计划,包括需求文档,业务分工计划,业务流程等。
3.关键技术或特殊技术编制相应的开发进度计划,制定相应的节点,编制节点控制计划。
4.编制开发节点实施细则,明确搭接和流水的节拍。
(二)开发进度“事中控制”
1.严格审核开发人员的进度计划、季度计划、月计划,并监督各人员按照已制定的开发进度计划进行开发。
2.在本项目开发期间,按开发进度需要,配备充足的开发人员,确保时间点的正常运行。
3.在开发期间,每周结束前,组织召开一次碰头会,协商解决当周开发过程中和第二周开发中将会发生的问题,应解决的问题决不拖延。
4.狠抓开发进度与质量,加强技术培训。只有在确保技术过关、质量的前提下才能求速度、讲进度、抓工期。
5.根据开发的实际情况,及时修改和调整开发进度,并定期向客户通报系统开发进展情况。
(三)施工进度“事后控制”
1.根据开发进度计划,及时组织测试人员通过事先编写的测试用例进行分项测试与系统测试。
2.定期整理有关开发进度的资料,汇总编目,建立相应的档案。
5.
项目质量保障体系
5.1过程中的保证
依据项目的软件特点、合作方的项目实施要求,采取需求分析,系统设计,软件项目计划,软件需求分析,软件模型设计,软件详细设计,单元测试设计,编写单元测试,系统培训,系统测试等一些列的措施在过程中保证项目的质量。
5.2技术方面的保证
公司研发人员均为国内高校分子计算机专业或招聘的高级技术人才,专业基础和工作经验扎实丰富,整个团队具有高级工程师、博士的人才搭配,具备强大的持续研发能力。
5.3软件质量管理责任分配
角色
职责
配置管理员
制定、创建和维护配置库,提供文档规范,并传达到各个部门。
QA(质量保证)
参与项目各个阶段的评审,进行过程评审和产品审计,检查文档和代码的规范执行情况
QC(质量控制)
软件测试是质量控制的主要手段,测试人员进行软件的测试设计和执行工作
5.4工作产品和活动
活动
责任人
工作产品
是否可裁剪
项目立项
项目经理
项目计划
否
配置管理员
配置管理计划
是
QA
质量保证计划
是
测试人员
系统测试计划
否
需求管理活动
项目经理
需求调研报告
是
需求规格说明书
否
用户、项目经理
用户确认书
是
QA
评审报告
是
设计过程、决策分析活动
设计组
概要设计说明书
否
界面设计图
是
详细设计说明书
是
项目经理
决策分析评议表
是
QA
评审报告
是
开发编码、集成过程活动
项目经理
版本记录
否
QA
评审报告
是
开发人员
程序代码
否
系统测试活动
测试人员
测试用例、测试报告
否
QA
评审报告
是
项目结项、交付与维护活动
项目经理
培训教材
是
用户手册
是
安装手册
是
项目总结报告
否
项目经理、客户
用户验收报告
是
QA
评审报告
是
项目跟踪与监控活动
项目经理
项目问题跟踪日志
是
QA
不符合项问题跟踪记录表
否
项目跟踪与监控活动检查单
是
风险管理活动
项目经理
风险管理列表
是
QA
风险管理活动检查单
是
配置管理活动
配置管理员
配置状态报告
是
变更请求审批表
是
变更跟踪记录表
是
QA
配置管理活动检查单
是
评审活动
项目成员
评审报告
否
QA
评审活动检查单
是
5.5评审
评审是以一种正式的形式进行,如有正式的、事先定义好的有关职责的各种角色,并遵循组织规定的流程。
对于任何工作产品的审计,都会组建与之对应的专门评审组,包括作者、主持人、记录员以及陪审员若干。评审组的成员可以包括PPQA、项目组成员,但不能有作者的直接领导或者管理者。
评审小组先召开一个预备,作者会针对工作产品向大家做个总体的介绍,例如讲解一下本工作产品的目标是什么,以及其相关的实现
细节、开发标准等。应该允许甚至鼓励评审组成员动手查看工作产品,或者查看开发过程中所用到的检查单。
评审小组的主持人负责确定什么时间开始真正的评审会议,在预备会和正式评审会议之间,评审小组成员对工作产品进行彻底检查,并依据相关标准和准则评审工作产品。
在预定时间,评审小组成员以会议形式聚在一起,依次对产品进行检查,主持人负责对整个会议的进展进行控制,记录员记录下这个过程。
在工作产品中发现的每一个缺陷都会被认真记录下来,并被适当分类。
会议结束后,负责人需要分析相关缺陷,找出产生此缺陷的原因并加以修正。
主持人应确保所有的缺陷都会得到解决和修正。如果过程需要加以变更的话,应将相关问题移交相关的质量保证人员。
阶段
评审内容
评审时机
参加人员
是否可裁剪
计划阶段
项目计划
项目启动会议
项目所有成员
否
配置管理计划
项目所有成员
是
质量保证计划
项目所有成员
是
系统测试计划
项目所有成员
否
需求阶段
需求调研报告
项目评审会议1
需求分析师、项目经理、系统架构师、设计组成员、QA
是
需求规格说明书
需求分析师、项目经理、系统架构师、设计组成员、QA
否
设计阶段
概要设计说明书
项目评审会议2
需求分析师、项目经理、系统架构师、设计组成员、QA
否
UI设计图
UI美工、需求分析师、项目经理、系统架构师、设计组成员、QA
是
详细设计说明书
需求分析师、项目经理、系统架构师、设计组成员、QA
是
决策分析评议表
需求分析师、项目经理、系统架构师、设计组成员、QA
是
编码阶段
代码检查(1)
项目评审会议3
开发组成员、项目经理、需求分析师、系统架构师、QA
否
代码检查(2)
开发组成员、项目经理、需求分析师、系统架构师、QA
否
测试阶段
系统测试用例
项目评审会议4
测试人员、项目经理、开发组成员、需求分析师、系统架构师、QA
否
系统测试报告(1)
测试人员、项目经理、开发组成员、需求分析师、系统架构师、QA
否
系统测试报告(2)
测试人员、项目经理、开发组成员、需求分析师、系统架构师、QA
否
阶段
用户手册
项目总结会议
项目所有成员
是
项目总结报告
项目所有成员
否
5.6质量保证(QA)
QA工作审计产品
文档
责任人
项目计划
项目经理
需求规格说明书
项目经理
概要设计说明书
项目经理
源代码
开发组
系统测试用例
测试组
系统测试报告
测试组
用户手册
项目经理
项目总结报告
项目经理
入最佳实践库的产品
项目经理
QA工作中需要审计的活动
活动
评审时机
项目立项
计划阶段
需求管理活动
需求阶段
设计过程活动
设计阶段
决策分析活动
设计阶段
开发编码活动
编码阶段
集成过程活动
编码阶段
系统测试活动
测试阶段
项目结项
阶段
交付与维护
阶段
项目跟踪与监控活动
每月一次
风险管理活动
每月一次
配置管理活动
每月一次
评审活动
每月一次
QA审计中的不符合项目问题
对QA审计过程中发现的不符合项问题要写入《不符合项跟踪记录表》,以邮件的方式发给问题的相关人员,做好和项目成员、项目经理、部门经理之间的沟通,问题的上报流程:项目组成员沟通解决——项目经理——部门经理——总经理。QA要对不符合项问题进行跟踪与监控,直到问题解决,QA验证并关闭不符合项。
6.
系统测试验收方案
系统测试验收主要包含以下四方面的工作内容,分别是验收测试、系统试运行、系统文档验收以及项目终验。
6.1.
验收测试
验收测试即对信息系统进行全面的测试,依照双方合同约定的系统环境,以确保系统的功能和技术设计满足建设方的功能需求和非功能需求,并能正常运行。验收测试阶段应包括编写验收测试用例,建立验收测试环境,全面执行验收测试,出具验收测试报告以及验收测试报告的签署。
6.2系统试运行
信息系统通过验收测试环节以后,可以开通系统试运行。系统试运行期间主要包括数据迁移、日常维护以及缺陷跟踪和修复等方面的工作内容。为了检验系统的试运行情况,甲方可将部分数据或配置信息加载到信息系统上进行正常操作。在试运行期间,甲乙双方可以进一步确定具体的工作内容并完成相应的交接工作。对于在试运行期间系统发生的问题,根据其性质判断是否是系统缺陷,如果是系统缺陷,应该及时更正系统的功能;如果不是系统自身缺陷,而是额外的信息系统新需求,此时可以遵循项目变更流程进行变更,也可以将其暂时搁置,作为后续升级项目工作内容的一部分。
6.3系统文档验收
系统经过验收测试后,系统的文档逐步、全面地移交给客户。客户按照合同或者项目工作说明书的规定,对所交付的文档加以检查和评价;对不清晰的地方可以提出修改要求,在最终交付系统前,系统的所有文档都需要验收合格并经双方签字认可。
6.4项目终验
在系统经过试运行以后的约定时间,双方启动项目的最终验收工作。 最终验收的工作包括双方对验收测试文件的认可和接受、双方对系统试运行期间的工作状况的认可和接受、双方对系统文档的认可和接受、双方对结束项目工作的认可和接受。 项目最终验收合格后,由双方的项目组撰写验收报告。
7.
技术服务与支撑
我公司在合同有效期内提供免费维护期和长期的技术服务,向用户用户相关技术人员免费提供原理和技术上的指导和咨询,使用户能正确熟练地使用本协议的软件开发及测试成果。
根据用户使用系统的相关部门人员现状,一旦系统安装调试完毕投入正常运行后,卓安公司在交付本系统的一段时间内,专门指派若干名专业工程师为用户使用部门进行指导培训和维护,直到用户安排的技术人员能完全接管本系统的操作管理为止。
7.1.
现场支持
系统在售后期间,提供7×24小时的技术支持服务。如系统出现故障,将保证30分钟远程响应;影响生产的故障4小时抵达现场,并派出专业工程师在8小时内排出故障;不影响生产的故障8小时内抵达现场,并派出专业工程师在2个工作日内排除故障。如在2个工作日内无法解决,将在2日内向用户方提出详细解决方案及日程安排,交给用户方确认。
7.2.
技术支持
长期电话技术咨询和技术服务和远程在线服务。用户可以随时拨打技术支持热线电话或通过远程协助进行有关技术咨询,专业技术人员会耐心解答用户的问题。免费提供需求预测、系统规划等支持。当用户需要对系统扩容、调整时,将免费协助用户准备预算、规范书、工程有关事项。
7.3.
常规维护
系统在售后期间,会安排工程师定期对系统进行运行检查。如有功能需求分析范围内的问题,及时进行修改;维护期后发现的在需求规格说明书范围内问题,同样及时进行修改。对用户提出的方便操作和易用等可用性方面的要求,尽可能满足用户要求,并保证在接到要求后两周内解决。用户提出性能要求,如属于软件编制因素导致性能较差,技术人员主动调整软件,以提高性能,保证在一个月内解决。
7.4.
变更管理
对系统的应用平台和开发、运行环境以及应用系统的变更和升级的详细资料第一时间提交用户。
8.
培训计划
8.1.1.
培训工作概述
用户软件系统项目建设完工后,为了使各个使用本系统的部门能熟练的操作系统,利用系统提供的功能来处理日常工作,本公司将对使用系统的相关部门员工进行一次全面的培训。
培训过程按系统使用部门划分,分别培训各部门使用的系统功能点及业务流程。另外为了用户管理需要,将重点培训2名系统管理员,培训系统管理相关功能。
8.1.2.
培训规范
由于培训过程涉及到时间、场地、人员等诸多不确定因素,本方案所提及项只作为参考大纲。实际培训安排因由主管部门统一规划,并下文到各系统使用部门。
培训的效果与参与人员的重视程度有很大的关系,客户各部门对参与人员要做好工作,引起重视。主管部门可以考虑是否需要在培训结束并且参与培训人员试用一段时间后,组织一次系统使用测验。
通过系统使用培训,达到以下目标:
Ø
使相关使用部门了解系统运作,熟悉系统功能。
Ø
使系统有效的推广到相关使用部门,让员工积极参与使用系统。
关键词:低位热源 、地源热泵 、地埋管 、热响应试验
一、工程概况
烟台荣昌制药厂新厂区位于烟台市经济技术开发区生物医药工业园内,总规划用地为27.75公顷(合416亩),分为二期完成,总建筑面积为20万平方米,其中一期建筑面积7.8万平方米,由九个单体建筑组成,主要建设目的为医药产品生产、相关的技术研发、孵化和中试等,项目由荣昌制药、荣昌生物和同济大学三方合作完成。
该工程的规划目标是以用地内的良好生态条件为基础,通过整合周边市政和自然风景资源,借助国家和当地政府的扶植,围绕园区建设任务中最核心的功能,将企业建设成低碳生产、绿色办公、示范带动的高科技制药企业。
二、空调冷、热负荷的确定
九个建筑单体空调负荷由设计院提供(详见下附表一),若将所有单体空调负荷叠加则设计空调总冷负荷为8988kW,空调总热负荷为6103kW,考虑到每个建筑物功能的不同,使用的时间也不一样, 对不同的建筑按不同的使用系数计入到总负荷中,如下表中的使用系数取值从100%-0%,计算的空调总冷负荷为7423kW,总热负荷为5191kW。 一期工程共设置一个空调机房,由机房分三路进出水分别供二个车间及生活区(办公楼、餐厅、招待所、职工宿舍),二个车间为分别为单独回路,生活区为单独回路,为了便于管理及核算运行费用,每个回路单独设一套计量装置。
二、初投资费用、运行费用及对环境景程的分析对比:
为了选择最适合本项目的冷、热源系统,以下对地源热泵系统(方案一)与城市热网+冷水机组系统(方案二)这两种方案主要从经济性、节能性以及环境影响方面对比分析。
1、两方案的初投资费用分析:
1.1:地源热泵系统初投资费用: 地源热泵系统(不含室内末端系统)总投资费用为1830万元,其中主机340万元,机房内附属设备及安装费用、室外管网安装费用320万元,室外埋管费用1170万元。
1.2:城市热网加冷水机组系统的初投资费用:烟台市城市热网的收费标准为120元/平方米,7.8万平方米的建筑总投资费用为936万元;冷水系统中主机的的初投资费用为270万元(主机低于地源热泵主机),机房内附属设备及安装费用、室外管网安装费用330万元(较地源热泵系统增加冷却水系统的费用),总投资费用为1556万元。
2、两方案的运行费用分析
空调系统运行费用:根据美国ARI标准和中国行业标准JB/T4329-97,平均满负荷率一般为60%。
运行费用=装机容量×平均满负荷率×运行天数×每天运行时间×电价
2.1:地源热泵系统运行费用:
夏季运行费用:(305+45+45)×4×0.6×100×16×0.75=113.76万元。
冬季运行费用:=(382+45+45)×3×0.6×135×16×0.75=137.62万元。
冬、夏两季运行总费用为251.39万元,折合为32.23元/平方米。
2.2:城市热网加冷水机组系统的运行费用:
冬季运行费用分析:烟台市城市热网收费标准为26元/O计算,冬季运行费用为202.80万元。
夏季运行费用分析:相同的空调冷负荷,由于冷水机组的冷凝温度高于地埋管系统的冷凝温度,其耗功高约20%,水泵的功率相同,冷水机组系统的运行费用为(305×1.2+45+45)×4×0.6×100×16×0.75=131.33万元。
冬、夏两季运行总费用为334.13万元,折合为42.84元/平方米。
备注:运行费用的计算条件如下:
①夏季空调运行100天,冬季空调运行135天;
②按空调每天平均运行16小时计算;
③平均满负荷率一般为60%;
④电价按0.75元/度,空调总面积7.8万平方米;
⑤冬季开3台机组供暖. 夏季开4台机组制冷。
3、两方案对比分析结果如下:将两种方案的初投资费用、运行费用、环境影响分析对比如下 :
通过对两种方案的初投资费用、运行费用及环境影响的分析比较得出,方案一虽然初投资费用比方案二高274万元,但每年可节约运行82.74万元,静态投资回收年限仅为3.31年,且每年可节约标煤458吨,减少二氧化碳排放量1245吨/年,减少二氧化硫排放量40.6吨/年。
三、空调热源的配置方案
1、冷、热源的配置方案
根据设计的冷、热负荷,设计选用四台LSBLGR-2280MD 型满液式半封闭螺杆地源热泵机组为整个厂区实现夏季供冷、冬季供暖,其中一台LSBLGR-2280MD机组使用冷却塔散热。地源热泵机组在夏季冷水进出水温度12℃/7℃,冷却水(地埋管循环水)进出水温度25℃/30℃,冬季空调热水进出水温度40℃/45℃,冷水(地埋管循环水)进出水温度6℃/3℃的标准工况条件下,其性能参数如下:
由以上参数可知,夏季四台机组总的制冷量为7027KW,冬季三台地源热泵机组总的制热量为5073KW (另外一台机组可以做为备用机组), 完全可以满足设计要求。
2、机组的运行方案:本方案空调机组选择了四台双压缩机头地温中央空调机组,每台压缩机都可以互为备用,实际使用中可以根据建筑物的实际负荷更好的调节机组的使用率,进行不同档位的加载,从而降低运行费用;并且每个压缩机头都可单独运行,能够相互作为备用,对系统的安全起到保护作用。
夏季机组处于制冷状态,其中三台机组向土壤释放热量,一台机组向大气释放热量,为室内末端提供空调冷水,满足空调供冷要求。
冬季四台机组互为备用,最大负荷时开三台机组 ,为室内末端提供空调热水,满足空调供暖要求。
3、机房主要设备总配电负荷及机房面积
本方案机房机房内所选设备的最大用电负荷按夏季四台机组全开,约1606KW(包含主机、循环水泵,不含备用泵),配电功率不小于1800kW ,电源采用380V,50HZ三相四线制.
设计机房占地总面积:12 m×26m=312平米 。
五、地源换热器计算:
该工程在方案实施前已经对拟打孔部位进行了勘探,根据勘探单位提供的《地质勘探及岩土热响应试验测试报告》,该工程共钻凿换热试验孔4个,分布在打孔区域的四个不同位置,每孔的深度为102-105米,以1#为例,地质层标高由上及下分别为粘土层-7.0米(厚7米),砂层-8.5米(厚1.5米),强风化砂岩-17.0(厚8.5米),青白色岩石属石灰岩-90(厚73米),灰红色岩石属石灰岩-105(15米)。
测试报告显示:当地土壤平均温度为14.9℃,4个测试孔的土壤综合导热系数分别为2.882W/(m.K),3.224/(m.K),2.953W/(m.K),3.295W/(m.K),在设计工况下夏季的换热量如下表:
以上数据是根据在测试条件的特定工况下计算出的参考值,期换热量是在单孔不受周边孔群影响情况下的计算值,该项目本身打孔区域比较集中,且孔数较多,系统正常运行时单孔换热量受周围其它孔群影响较大,保守取值按70W/m。
综合土壤热物性报告,设计地源换热器采用垂直埋管形式,井中敷设两路(双U型)管径为φ32的PE管道,井深120米(受打孔位置的限制),井间距为4.5*4.5米。冬季工况每口井的换热量为4.5×1.2=5.4kW,夏季工况每口井的换热量为 7×1.2=8.4kW 。
夏季空调制冷需要打孔数N=1792×3(1+1/5.88)/8.4=748
冬季空调制热需要打孔数N=5191(1-1/4.42)/5.4=744口
本方案按冬季数量增加8%,即按800口井考虑,夏季多余的热量由冷却塔释放 。
六、结论
地源热泵系统是随着全球性的能源危机和环境问题的出现而逐渐兴起的一门热泵技术, 虽然与对比方案相比,投资费用高15%,但每年可节约运行费用25%(静态回收期仅为3.31年),且减少了对周围环境的污染及排放量,是理想的环保、节能空调系统。
参考文献:
【1】GB 50366-2006地源热泵系统工程技术规范
【关键词】软件工程 毕业设计(论文) 实践教学
一、引言
毕业设计(论文)(以下简称毕业设计)是计算机及相关专业教学计划中的一个重要环节,是培养学生对所学基本理论及基本操作技能综合运用的训练过程,是提高学生分析和解决问题能力的重要实践环节,是实现理论与实践相结合的重要途径,是对教育教学质量的全面检查。目前,计算机及相关专业的毕业设计质量正在逐年下降:学生急于找工作或考研,毕业设计得不到应有的重视;需求分析不到位,设计成果不符合实际需求;软件开发流程混乱;缺乏文档写作训练,等等。
针对上述问题,笔者认为,除了应当从管理角度严格进行过程监控外,还应当使学生通过《软件工程》课程的学习,提高毕业设计的质量。
二、软件生命周期与毕业设计过程的对应关系
软件产品从形成概念开始,经过开发、使用和维护,直到最后退役的全过程称为软件的生命周期。软件生命周期可以划分成若干个时期与阶段,它与毕业设计各个环节的对应关系如图1所示。
三、软件生存周期各阶段应完成的任务
1.可行性研究与计划阶段、需求分析阶段
可行性研究与计划阶段主要完成问题的定义、可行性论证以及初步计划的制定;需求分析阶段主要完成需求调查,进行功能、性能与环境约束分析;编制软件需求规格说明、制定软件系统的确认测试准则和用户手册概要。这两个阶段对应于毕业设计的课题论证、选题、调研、查资料,通过对设计题目的深刻理解,完成开题报告的撰写工作。
2.概要设计阶段和详细设计阶段
概要设计阶段主要完成软件系统总体结构的建立、定义功能模块的接口、设计全局数据库和数据结构、规定设计约束、编制概要设计文档等工作;详细设计阶段主要完成模块详细设计及编制模块的详细规格说明工作。包括模块的详细功能、算法、数据结构和模块间的接口信息等设计,拟定模块测试方案;把模块详细设计的结果汇总,形成模块详细规格说明书。这两个阶段对应于毕业设计的系统设计阶段。
3.实现阶段与组装测试阶段
实现阶段主要完成编码及单元测试工作。根据模块详细规格说明书,将详细设计转化为程序代码、对模块程序进行测试,验证模块功能及接口与详细设计文档的一致性,并形成单元测试报告;组装测试阶段主要完成模块程序组装与测试及组装测试报告的编写。
4.确认测试阶段
该阶段主要完成软件系统测试、确认测试文档编制及软件评审工作。根据软件需求规格说明定义的全部功能和性能要求及软件确认测试准则对软件系统进行总测试;向用户提供以确认测试报告为主的有关文档,包括系统操作手册、源程序清单和项目开发总结报告等;由专家、用户、软件开发人员组成的软件评审小组对软件确认报告、测试结果和软件进行评审,并将得到确认的软件产品交付用户使用。这个阶段主要对应于毕业设计(论文)中的论文评审、结题验收及毕业设计的答辨准备阶段。
5.软件运行与维护阶段
主要进入软件的使用阶段,并完成软件的维护工作。它主要对应于毕业设计中的答辩阶段。
四、毕业设计应注意的几个问题
1.摘要
摘要是对文章主要内容的摘录,要求精、短、完整。以几十字至三百字左右为宜。摘要应具有独立性和自明性,从摘要中即应获得必要的信息;摘要中只能使用第三人称;要客观如实地反应原文的内容,要着重反映论文的最新内容和作者特别强调的观点;要求结构严谨、语义确切、表述简明,一般不分段落、不进行自我评价。
2.关键词
关键词主要用于论文检索,它是从论文的题名、摘要和正文中选出的,是对表述论文的中心内容有实质意义的词汇,关键词一般以3~5个为宜。
3.结论
结论写作的内容应主要考虑本文研究结果是什么?研究结果说明了什么?对前人有关的看法作了哪些修正、补充、发展、证实或否定?本文研究的不足之处或遗留未予解决的问题以及对解决这些问题的可能的关键点和方向等。结论应该准确、完整、明确、精练。
4.需求分析
在毕业设计中,学生往往不能对所做题目进行充分的调研,需求不明确,随意想象的成分较多。特别是在数据表的建立上,大部分同学随意设置字段的类型,而字段长度基本上采用默认置。而在实际项目开发中,数据项的设置应主要注意以用户的需求和满足系统要求为准,而不应设计冗余的字段;数据的类型要依据实际需求,当某些字段可以是选择某几种类型之一,应考虑哪一种更有利于本系统或哪种更易于用户操作和维护。
5.详细设计
许多同学把详细设计阶段的任务理解为代码实现,因此,在概要设计之后就着手进行代码的编写而忽略了算法的表达及测试用例的编写环节,由此造成的结果是随意编程,大量的时间浪费在程序的修改和调试上。
6.软件测试
测试做得不够全面,大部分同学只选择了有效的测试用例,而没有进行无效的测试用例的设计,因此所做的软件BUG较多。
7.团队合作
在毕业设计中,应有意识地锻炼学生们的团队协作精神,因此,在布置毕业设计题目时,应尽量选择规模大一点的题目,然后由4~5名同学共同协作,每人完成一个子题目。这样,可以使学生们分析问题和解决问题的能力、沟通和表达能力得到充分锻炼,为今后的工作奠定基础。
参考文献:
[1]全国文献工作标准化技术委员会.科学技术报告、学位论文和学术论文的编写格式 [S].北京:中国标准出版社,1988.
十几年的装饰工程经验告诉我们,做好一个装饰工程非常的不容易,换句话说,在一年保修期内不能有任何工程的上的纰漏,尤其是大型装饰工程,似乎在装饰行业来说是很少见的。但我公司能长期在全国大型的装饰工程中多次夺标,多次获样板工程,并能同业主保持长期的业务合作,可以说,一方面是全体员工的努力,但更重要的是公司总结出较完善的一套装饰工程管理经验。
为了促进业内人士之间的技术交流,我们将总结的部分经验提供出来,以供同业同仁互相提高。
对一个装饰工程来讲,管理人员的素质是第一重要的,项目经理,材料员、施工员、财务缺一不可,在装饰工程的管理中同样有着重要的作用。他们的素质决定了装饰工程施工的每一个细节,调整一些质量控制点的力度,同样也就决定了工程本身的优劣。
对一项装饰工程来讲,重点是要作好“质量、进度、投资”的控制和“合同信息”的管理,具体而言,作好施工工程的准备工作,并将其列成表,归好类,在施工过程中不断跟踪记录、检验、及时调整、最终达到我们的预期值。以下,我们以简单的术语更详细的概括一下。
一、装饰工程的进度(网络计划)
1、 进度表(根据实际发生情况,报告周进度计划);
2、 材料明细表,各种材料进场表,自检和业主验收时间表;
3、 各工种人员进场安排表;
4、 隐藏工程验收时间表
5、 各单项工程阶段检验及验收时间表
以上工作虽密不可分,但通常业内人士只用第一种表代替。我们认为很难发现问题,更不能细人,而将这几个环节提出来,充分考虑和安排,就会发现其中有冲突的地方,使我们能预前解决矛盾,并将工程的管理落到实处。同时,以上工作对加强同业主和其监理人员的交流好处。
二、装饰工程的质量
1、 各专业原始图纸及现场勘察资料;
2、 施工图深度(节点图,特殊工艺说明图,各单位工种之间配合工作如预留检修口方案等。)
3、 施工组织设计,施工场地平面使用说明;
4、 主要工序施工方案及用材一览表,尤其是防水、防潮、防四害、防腐方案;
5、 施工主要技术班组和管理人员安排一览表
6、 各主要工种负责人名单及其身份证复印件、主要技术特长和管理水准;
7、 隐蔽工程及检验明细一览表
8、 分包工程及各分包单位资质一览表(应附说明资料)
前两项工作虽然同施工队伍的关系不是很重要的,但往往问题就会出现在这里。许多工程项目常有这种情况,施工队伍进场了,发现设计单位确定的洗手间位置,没有给排水管道,或者建筑提供的电源与设计不符,需重新设置配电房等,造成成本不必要的加大。因此,施工前的实地勘察和审查施工图非常重要。另外,由于目前设计人员素质不等,对施工工艺和材料的应用很熟练的设计师并不是很多,尤其是一些特殊做法,更需要我们优秀的施工人员同设计师多沟通,而不要一意孤行的去改变材料或改变做法,从而偏离了设计的初衷。
装饰工程质量是最重要的质量控制点是隐蔽工程,虽然不被人重视,但往往问题就出现在这里。如给排水工程管道的水压试验虽然很简单的,但却为整个工程最重要的环节。没有经过验收,规定压力数值的试验,管道系统是否漏水无法保障,一旦隐蔽暗装、作好防水、再贴完瓷片及竣工之后发现漏水,再找原因是非常困难的,经济上的损失非常大,更严重的是我们可能失去了一个合作伙伴。因此,隐蔽工程的自检是施工中最关键之处。
三、装饰工程的投资
1、 设计阶段控制:装饰效果论证、功能论证、图纸深度审核。
2、 施工阶段控制。
(1) 材料、设备的产地、品牌、等级及材料样板的封存一览表;
(2) 主材进场自检和业主的确认;
(3)工序的合理安排和人员的合理调用;
(4)备料的准确和材料的合理利用。
装饰施工合同签订之后,应该说工程项目的成本、利润基本有了90%的底数,以上环节施工阶段决定了工程的成本。我特别反对“偷工减料”,实际上对有经验的施工人员来讲这一定是“得不偿失”。设计阶段的要点似乎同施工企业关系不大,但施工前,业主的确认和理解设计意图非常重要。也许我们经常听说,施工到一半或基本完工后,业主认为设计效果不好,造成返工重梆,这种投资上的浪费有时非常大,对此部分的工程追加,虽然与施工企业关系不大,但十有八九业主是不会结算给施工企业的。因此,施工前同业主之间的沟通是必不可少。
四、对装饰工程信息的管理
1、装饰材料消防审批表;
2、基层隐蔽验收记录;
3、吊顶隐蔽验收记录;
4、防火涂层隐蔽验收记录;
5、主要材料产品出厂合格证及复验报告;
6、进口材料的设备商检证、产地证;
7、分部工程质量评定汇总表;
8、施工日记和周、月工作总结;
9、竣工图。
装饰工程的信息管理,具体的说,就是要作好施工日记,总结和以上各种施工的自检和验收记录、整理工作。通过以上工作,既可以随时对进度、质量、投资的原计划进行对比,随时调整施工组织计划,又可以预前解决可能出现的特殊问题,更能在出现施工纰漏时,找出问题的原因并及时得到解决。同时,通过文字上的信息交流,也可以加强同业主之间的了解和信任,为后续的合作打下基础。
五、配套专业的质量
1、给排水工程
(1)阀门解体检查记录;
(2)管道焊接记录;
(3)管道焊缝探测报告;
(4)计量表校验报告;
(5)管道试压检验报告;
2、强电和弱电工程
(1)防雷引线安装隐蔽验收记录;
(2)线路穿管敷设隐蔽验收记录;
(3)接地极接地带埋设隐蔽验收记录;
(4)配电柜箱安装就位记录;
(5)应急发电设备安装就位记录;
(6)用电设备安装就位记录;
(7)导线及设备绝缘电阻测试记录;
(8)接地接零点阻测试记录;
(9)计量仪检定报告;
(10)整定记录及整定通知单;
3、消防工程
(1)消防材料设备报批表;
(2)阀门解体检查记录;
(3)钢管焊接记录;
(4)设备绝缘电阻测试记录;
(5)接地接零电阻测试记录;
(6)喷淋头、烟感器性能抽样实验报告;
(7)烟感器反应实验报告;
(8)管道试压检验报告。
4、空调安装
(1)消防材料设备报批表;
(2)风、水管道安装防腐保温隐蔽验收记录;
(3)阀门解体检查记录;
(4)给水管焊接记录;
(5)设备绝缘电阻测试记录;
(6)接地接零电阻测试记录;
(7)管道试压检验报告;
(8)冷冻水系统水温测试报告;
(9)风口风压测试报告;
(10)风洁净度测试报告;
关键词:modbus;一致性测试;自动化;用例生成器
中图分类号:tp393.09文献标识码:a
文章编号:1004-373x(2010)01-171-03
automation of modbus conformance testing
zhao jian
(northwest airtraffic management bureau,xi′an,710082,china)
abstract:the existing modbus protocol conformance testing method has following problem: there is not automatictesting method for it,and this brings negative impact on the effectiveness of test.in order to solve this problem,the architecture of automation method for modbus protocol conformance testing,the architecture includes test case generation and test result analyzer.the automatic conformance testing system based on the architecture is realized.in practice,the system found a number of hidden modbus conformance errors,this proves that the availability and effectiveness of the method.
keywords:modbus;conformance testing;automation;test case generation
0 引 言
modbus协议已经成为一种事实的工业标准,但modbus设备间的一致性、互操作性较差,是制约modbus发展的瓶颈。为了解决modbus协议的一致性和互操作性问题,国内外的研究机构展开了深入的研究并取得了一些成果。
在modbus-ida国际组织的支持下,进行modbus一致性测试的实验室陆续建立。目前,在国外得到modbus-ida国际组织授权的modbus一致性测试实验室仅有两处:一处是位于美国密歇根大学的modbus tcp一致性测试实验室;另一处为设在该课题所在机械工业仪器仪表综合技术经济研究所的modbus serial line/tcp一致性测试实验室,它是独立于产品制造商的第三方测试机构[1,2]。国外其他研究机构对modbus测试系统的研究处于发展阶段,modbus测试系统被应用到火电厂、电力监控系统、控制系统安全认证中,但都未形成一致性和互操作测试标准和自动化方法[3-6]。
在国内对进行modbus一致性和互操作性测试研究的机构主要有:北京交通大学的研究人员开展了modbus串行链路协议一致性测试系统的研发工作[7,8];开普电器检测研究院在modbus协议一致性测试方面有多年的经验,已加入modbus-ida协会[9]。
总得来说,国外在modbus协议的一致性和互操作性测试的研究已经取得了一定的成果,并形成了一些测试系统,但国内用户分享成果的代价较大,并且无法进行modbus设备的互操作性测试,并且尚未形成测试自动化方法;国内的研究已经起步并取得了一些初步研究成果,但在国内尚未形成测试标准和测试自动化方法。
为了克服目前研究中所存在的问题,本文主要研究modbus协议的一致性测试的自动化方法,测试的自动化方法主要包括测试用例的自动生成和测试结果的自动分析两方面,限于篇幅对测试结果的自动分析方法不予展开论述,主要论述测试用例的自动生成方法。
1 一致性测试的基本原理
协议测试理论经过几十年的发展,在许多方面都取得了很大的进展,其中最成熟的是协议一致性测试的理论,主要代表是iso制定的国际标准iso/iec-9646:协议一致性测试的方法和框架。图1是一致性测试的基本示意图。iut(implementation under test)是根据规范的具体实现,是一个内部不可见的实体;规范(speciflcation)以某种形式化语言或者自然语言描述,但不管怎样的描述形式,其根本都是一个扩展自动机模型;测试仪(tester)根据规范为iut产生一组测试序列 (test sequence),然后观察iut的外部行为是否符合规范的描述[7,8]。
图1 一致性测试原理示意图
目前的实际工程测试中,测试序列主要是由少数专家凭借经验制定的。因为原始的规范通常都是自然语言描述的,不同的实现者在使用形式化语言建模的过程中,就可能产生了一个一致性问题:原始规范和形式化规范之间可能在语义上产生偏差。根据这样衍生的形式化描述产生的测试序列不能作为判断是否通过一致性测试的依据。
对于一致性测试的过程,大约需要分五个步骤来完成[8],图2是一致性测试的过程。
图2 一致性测试的过程
第一步,分析测试需求。也就是说,分析相应的标准或规范,从中找出一组测试标准,建立用于实现的一致性描述pics(protocol implement conformance statement)。每个pics应该尽可能的简单并且仅仅集中在一个原子功能上,测试标准之间要做到不相抵触。
第二步,在pics上增加一些用于测试实现的协议实现额外信息pixit(protocol implementation extra information statement),pics和pixit就组成用于测试实现的一致性信息citi(conformanee information for testing the implementation)。
第三步,基于citi,生成一组抽象的测试用例atc(abstract test case)的集合——抽象测试套件ats(abstract test suite)。
第四步,对各atc中的参数选择合适的输入值以及相应的“预测结果”,得到可执行的测试用例etc(executable test case)的集合——可执行的测试套件ets(executable test suite)。当然,生成的可执行测试套件是与所处的测试平台是密切相关的。
第五步,对被测单元uut(unit under test)执行etc的时候,被测单元的测试过程将会产生一个“通过”或“失败”的报告。报告“失败”即未能通过测试则意味着与规范不一致。
2 一致性自动化测试方法
目前测试过程中的“生成ets”、“测试uut”等工作步骤中实现了简单的测试系统,能够对一些工作实现自动化,如根据手工输入的modbus协议的从站号、功能号、地址等参数生成测试用例,能够自动执行测试用例并生成简要测试报告。但这些测试过程存在以下问题:测试用例的生成需要大量的人为干预;另外,测试结果只是简要的测试报告,没有更进一步的分析报告,以帮助用户更容易地确定问题所在。
如图2虚线框部分所示,“生成ets”、“测试uut”等工作步骤可以实现测试自动化。自动化后的体系结构如图3所示。其中可视化用例设计器、测试用例生成器完成测试用例的自动生成工作;测试结果分析器完成测试结果的自动分析工作。限于篇幅对测试结果的自动分析方法不予展开论述,主要论述测试用例的自动生成方法。
图3 一致性测试过程的自动化示意图
通常在一致性测试过程中,测试用例的设计和生成是软件测试的关键任务和难点,据统计,约有40%一致性测试开销用于设计和生成测试用例上。长期以来,测试用例的设计和生成主要依靠手工完成,这意味着要求测试人员具有相当的经验和较高的专业水平。因此,实际工程中的测试用例生成往往带有很大的盲目性,主要依靠直觉经验产生测试用例,这导致测试用例数量多,测试效果差,测试成本居高不下。另外,如何生成最能发现被测系统(或程序)存在问题的测试用例,如何能用最少的测试用例实现足够大的覆盖率,也是测试人员一直追求的目标。这些问题的解决方案就是测试用例的自动生成[10]。
2.1 测试用例的自动生成方法的体系结构
图3中的测试用例自动生成器是测试用例自动生成工作的核心。其体系结构如图4所示。
其中用例设计描述是描述用例特性的文本,根据所选择的算法不同而描述方式也不同:如采用“基于形式规格说明的方法”则用z,vdm,obj,larch [11]等语言来描述,如采用“组合覆盖方法”则用xml脚本来描述。
图4 测试用例自动生成器的体系结构
算法适配器为各种算法提供接口,它向上为描述解析器提供算法支持服务,向下解释各种算法,使得体系结构能够兼容多种算法而增强体系结构的扩展性和适用范围。
描述解析器基于算法适配器来分析用例设计描述,将描述统一转换成用例生成器可识别的内部描述形式,然后传递给用例生成器。
用例生成器获得来自描述解析器的内部描述,并根据描述自动生成可执行测试用例。可执行的测试用例支持多种形式存储,如内存存储、文件存储、数据库存储等,具体的存储格式随用例执行器的需求而变。
2.2 测试用例的自动生成方法的实现
为了验证体系结构的合理性和有效性,基于microsoft vc 6.0 sp6、modbus activex控件、“分类树方法”、cte xl(classification tree editor extended logics)实现了modbus协议一致性测试的自动化系统。
其中cte xl是我们系统中的可视化用例设计器,它是一个语法控制的、可视化、图形化的编辑器。帮助我们更加有效地使用分类树方法进行测试用例的设计。
分类树方法是黑盒测试中的一种部分测试方法,由grochtmann 和grinun 提出,后又由chen 和poon 改进[11],它是一种有效的功能测试方法。分类树方法的基本思想是: 首先逐层划分测试对象的输入域,然后将划分的独立的类结合为无冗余的测试用例,这些测试用例覆盖了整个输入数据域。
算法适配器、描述解析器、用例生成器、分类树方法均使用microsoft vc 6.0 sp6实现。
modbus activex控件用来执行用例并生成测试报告。该控件具有多线程、多任务、多优先级等特性,支持modbus serial line/tcp通信协议,支持rtu和ascii两种通信模式,具有良好的性能。
系统实际使用时,首先用cte xl构建用例设计,也就是生成z语言描述的规格说明,然后描述解析器解析该规格说明并生成测试用例模板(系统内部格式),交由用例生成器生成可执行的测试用例,最后由modbus activex控件用来执行用例并生成测试报告。人工参与的部分只是在第一步,即用cte xl构建用例设计,其余部分均自动完成,大大降低测试人员的工作量,提高了测试工作的效率和客观性。
该实现已经被应用到“山东石油化工厂装车管理系统”中用来测试管理系统和油气批量控制仪之间modbus通信,也被应用到“长庆单井计量信息系统”中用来测试信息系统和plc之间的modbus通信,限于篇幅测试过程不赘述,经过测试发现了一些隐藏的modbus一致性问题并且便于使用,提高了一致性测试有效性和客观性,同时增强了产品的可靠性和可用性,也证明了本文所论述的一致性测试自动化方法的有效性和实用性。
3 结 语
在分析了现有modbus协议一致性测试中存在的问题后,本文提出了一致性测试的自动化方法,基于这个方法设计并实现了一致性测试系统,在实际应用中该系统发现一些隐藏的modbus一致性问题,提高了modbus一致性测试的有效性和客观性,证明了该方法的有效性和实用性。目前该方法的实现基于分类树方法,下一步将研究其他测试用例自动生成方法,使其进一步完善。
编辑整理
参考文献