欢迎来到天天文库
浏览记录
ID:38424126
大小:34.50 KB
页数:3页
时间:2019-06-12
《论测试方法和工具的选用》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库。
1、论测试方法和工具的选用【摘要】本文讨论某省环保厅重点污染源在线监测系统的测试方法和工具的选用。该系统的目标是全天候在线监控重点污染源企业污染物排放情况及污染处理设施运行情况,包括污染源自动监控及污染源报警,主要实现污染源远程监测、现场数据采集、自动判断是否超标、超标报警等功能,满足全省环境监察人员对重点污染源企业监测数据的查询分析、报表打印、远程自动采样等需求。系统的性能和安全性要求高。系统的功能多,性能要求高。项目采用了微软.net应用开发平台,系统经历了多个测试阶段。根据系统的特点本文重点讨论测试策略和测试工具的选用,在单元测试中划分了类的优先级,使用了NUnit测试框架,性能
2、测试中确定关键用例,使用了RationalTestManager2003。在该项目中我担任了项目经理,参与了系统的分析与设计工作,同时也参与了整个测试过程。【正文】近年来,随着社会经济的发展,环境污染负荷逐渐增加,环境问题已经成为关系到国家和民族生存的重大问题。为有效加强污染源监管,提高环境监察执法信息化应用能力工作迫在眉睫。2008年3月份某省环保厅委托我所在的公司承担污染源在线监测系统的开发。本系统主要实现对企业排污、污染治理设备及监测、监控设备进行实时监测。当发生排污超标、治理设施停运等异常事件时,现场适配器自动识别事件类型,报送环境监察部门,并告知事件内容。管理人员可即时调
3、整监测数据采集、传送频率与其他参数,在前端监控设备支持的前提下,实现对其进行远程控制和操作,发送远程采样等指令。整个监控系统将基于GIS平台。该项目整个项目历时7个月,在2008年10月份交付使用。系统使用一年多来该省环保厅环境监测和执法能力有了很大提高,得到了用户的一致好评。系统选用微软公司的.NET开发平台,采用了B/S三层架构设计:表示层、业务逻辑层和数据层。表示层负责处理系统监测数据以不同的方式展现,;业务逻辑层负责系统处理业务逻辑;数据层负责完成数据的存取,数据库采用微软公司的SQLSERVER。性能和安全性要求高,项目建设时间紧。首先,我们考虑项目测试组成员不仅限于测试
4、工程师,还请到了相关业务人员加入到测试队伍中。业务人员可以从实际的业务角度参与到测试数据的准备和测试用例的准备工作中,并帮助分析测试结果,发现与实际业务相关而测试工程师容易忽略的问题。由于系统复杂、业务功能多,因此我们从一开始就非常重视单元测试。在单元测试阶段,我们采取了开发人员自己编写测试用例、小组人员交叉评审和测试组抽查相结合的策略,以避免测试用例的片面性,同时要求单元测试紧接代码编译通过之后。单元测试我们采用了NUnit自动化测试框架,用它在.NET类上创建和执行自动的单元测试。我们知道,.NET引进了一个新的程序开发概念—Attributes(属性),让开发人员可以在代码之
5、上加入Metadata(元数据),提供有关Assembly的额外信息。NUnit中的TestRunner会扫描已经编译好的程序代码,并且从Attribute里面知道哪些Classes是TestClasses,哪些Methods是需要执行的TestMethods。然后,TestRunner使用.NET的Reflection技术来执行这些TestMethods。这大大减轻了测试人员的工作量,也有效的保证了单元测试的可靠性,为后续的测试奠定了坚实的基础。在性能测试阶段,我们分四个阶段来实施:启动阶段、准备阶段、实施阶段和分析阶段。测试工具我们选用了RationalTestManager2
6、003,测试环境包括Localcomputer和Testagent,Localcomputer作为测试平台的控制主机,负责整个测试的计划、设计、实现、执行和评估,作为Testagent的机器,统一接受由Localcomputer发出的脚本指令信息,在一台计算机上可以模拟多用户访问系统,并将执行结果报告给LocalComputer,最后由Localcomputer生成统计报告。在测试中我们也发现响应时间慢的问题,在经过对服务器的调优,以及相应部分的代码优化、SQL优化之后,性能得到明显改善。下面我们简单介绍性能测试中我们对遇到的问题所采取的策略:(1)目前自动化测试工具能够录制和回放
7、脚本的大都是基于HTTP协议的浏览器客户端方式。我们采取自动录制和手工编写脚本相结合的方式,对于浏览器客户端的测试,采用自动测试工具录制脚本。对于GUI客户端的测试,用ApplicationCenterTest性能测试工具提供的API,手动或半手动编写测试脚本。(2)系统业务功能繁多,测试需要准备的数据量大,而测试时间短。我们分析出业务具有代表性重要和关键用例,并且利用开发过程中已有的客户端程序,减少测试脚本开发量。由于采用了适当的测试方法、测试策略和测试工具,总体来
此文档下载收益归作者所有