国产测试机(共4篇)
国产测试机 篇1
0 引 言
“十五”期间, 在国家科技攻关计划、863计划及电子发展基金等支持下, 我国在数据库技术核心领域取得了一系列的突破, 国产数据库得到了长足的发展, 市场占有率也得到了稳步提升。但是国产数据库之间的互操作, 一直是制约其进一步发展的瓶颈, 解决数据库的互操作性, 已成为当务之急, 并已形成当前数据库产业发展中的一股技术潮流。对于互操作这个概念到目前为止还没有形成一个大统一的严格定义。许多研究机构和学者都有自己的观点和看法, 美国电气及电子工程师学会IEEE对互操作性是这样定义的:两个或两个以上系统或元素的以下能力, 交换信息并且使用这些已交换的信息。两个或两个以上系统或组件在不同环境下交换信息并且使用这些信息的能力。欧洲电信标准协会ETSI对互操作性是这样定义的:互操作性就是两个或两个以上系统通过相同的通信协议进行互操作的能力。如图1所示。
对于数据库互操作这个概念来说, 如图1所示的2种互操作定义都比较片面, 所谓数据库的互操作应该包含以上所示的2种定义, 具体就是指数据库的互换性和数据库间的数据迁移。解决互换性, 数据库的体系结构要一致;解决数据迁移, 数据库的数据格式要一致, 要做到上述的几个方面, 必须制定一套技术规范 (关系数据库管理系统规范) , 对国产数据库产品的SQL技术、JDBC接口函数、可靠性管理、系统管理做统一的规定。然后在规范符合性测试的基础上, 通过技术规范与测试环境的有机结合, 为实现国产数据库互操作提供基础技术保障。但是规范不可能覆盖国产数据库互操作的全部细节, 也就难以保证通过符合性测试的产品能够在各种具体应用中完全实现互操作;所以引入集成测试作为补充, 在集成测试的基础上, 通过对具体应用与国产数据库产品相结合的测试, 为实现国产数据库数据迁移和互换的整体可用性提供实际的案例支撑。最后依据技术规范和集成测试搭建完整的互操作测试框架, 可以全面评测国产数据库产品的互操作能力。本文就以基于国产基础软硬件的公共信息平台关键技术开发及应用项目 (2005BA112A) 为背景, 提出国产数据库互操作性的测试框架及对其测试方法进行研究。
1 国产数据库互操作测试框架及原理
国产数据库互操作测试的目标是能够尽可能地覆盖数据库的功能, 能够较为全面地测试国产数据库的互操作性。为了达到这个测试目标, 需要在两个方向上做出努力:一是对国产数据库产品进行规范符合性测试;二是在集成环境下, 对国产数据库产品在实际应用业务逻辑下的集成性进行测试。之所以在规范符合性测试之外引入集成测试, 主要基于两方面的考虑, 首先, 规范不可能覆盖国产数据库互操作的全部细节, 也就难以保证通过符合性测试的产品能够在各种情况下完全实现互操作;其次, 集成测试难以做到完全覆盖产品的功能、接口和参数。因此, 需要将规范符合性测试和集成测试进行有效结合, 从广度和深度上互为补充。可以把这两个方面抽象如图2所示国产数据库互操作性的目标测试空间。
图2中, 以广度为横轴、深度为纵轴构成了一个国产数据库互操作性测试评价平面, 在深度方面的理想要求是完全体现实际应用的业务逻辑, 在广度方面的理想要求是完全覆盖规范中规定的功能接口;图中A点对应于这两个要求, A点和原点O之间形成的矩形区域代表了国产数据库互操作性的目标空间, 最理想的情况是应该可以完全覆盖该目标空间。图3给出了测试方法的定位和开发方向。
综合以上所述, 笔者提出了一种数据库互操作性测试框架, 总体结构如图4所示。
下面将从测试过程、环境配置和测试用例等方面对国产数据库互操作性测试框架进行阐述。
2 测试方案
2.1 测试环境
从主客观性的角度进行划分, 测试环境分为软环境和硬环境。软环境指的是与人有关的一些偏主观因素, 主要涉及测试人员、人员组织、测试管理、测试策略等内容, 而硬环境指的是计算机系统、测试软件以及人工搭建的系统环境等客观条件。一般应用软件的测试软环境需要注意的方面大致相同, 都与人有紧密关联, 硬环境的设置也没有太大的灵活性:计算机的配置是不可改变的, 测试软件是固定唯一的, 不存在硬环境的配置问题。而国产数据库互操作性没有一种特定的测试软件去自动检验成功与否, 这时便要在测试前为测试对象搭建系统环境, 为后面的测试过程做环境准备。它的环境配置流程图如图5所示。
由于测试采用B/S结构, 不需要在客户方进行部署。所以应该做到:
· 整体打包:尽可能减少独立打包的数目以便简化安装部署过程;
· 统一配置:在部署完成后, 应提供统一的测试相关配置入口。它统一环境配置入口是基于hibernate技术来实现的, 只要改动hibernate_cfg.xml和local.properties中的部分信息就可以实现, 非常方便。部分代码如下:
hibernate_cfg.xml文件中需改动部分:
做成工具化的界面就是如图6所示的形式。
2.2 测试过程
国产数据库互操作性测试框架的执行流程如图7所示。
2.3 测试用例
以下面对国产数据库互操作性的测试用例进行研究, 提出若干编写测试用例意见。
国产数据库互操作性就是使各个不同的国产数据库产品能在国产操作系统Linux下能够进行数据的迁移, 和产品的相互交换, 而不影响整个平台的正常运行。由于两个数据库之间存在数据类型不一致, 语义关联不一致, 事务处理方式不一致等特点。针对这些特点来设计测试数据非常重要。
1) 数据类型复杂, DM和Kingbase所支持的数据类型不一致。数据在迁移的过程中, 数据类型和数据长度要进行转换。表1中就列举了对DM和Kingbase部分的数据类型转换映射关系。所以在测试中主要就是要测试这几种数据类型是否符合规范所规定类型和长度, 以及数据内容是否能正确的迁移。
2) 国产数据库之间有着很复杂的语义关联, 由于数据库应用系统的开发是独立的, 对相同或相关的数据意义或解释的不一致是不可避免的, 这就会发生语义的差异, 举例来说:
考虑数据库DB1中关系RESTAURANT的属性STUDENT—SOURCE, 他表示学校中每个学生的平均成绩, 但是不包括选修课的成绩。而数据库DB2中关系BOARDIBG的同一属性STUDENT—SOURCE所表示的每个学生的平均成绩却包含了选修课的成绩。设两个属性具有的相同的语法性质, 将DB1的RESTAURANT, STUDENT—SOURCE和DB2的BOARDIBG, STUDENT—SOURCE进行比较是没有意义, 因为他们的语义有差异, 设计测试用例时候要特别注意。
3) 在不同的国产数据库之间的数据迁移时候, 例如表之间的迁移, 当外键中含有null值, 索引名有冲突, 序列的最大最小值问题, 自增长列, 高低优先级表间的问题都是需要特别注意的地方, 在编写测试用例的时候对这些方面要特别重视。
3 结束语
本文在基于国产基础软硬件的公共信息平台关键技术开发及应用项目中的国产数据库互操作性的规范符合性测试和集成测试的基础上, 提出了基于国产Linux环境下国产数据库互操作测试框架对其测试方法进行讨论, 并给出了具体的实现方案, 主要是在测试过程、测试环境上做了阐述, 并对测试中的用例编写提出了一些建议。这些建议都是基于测试的一般情况, 针对实际项目时, 要根据具体情况做相应的调整, 来达到最佳测试效果。文中所提出的测试框架、测试技术在基于国产基础软硬件的公共信息平台关键技术开发及应用 (2005BA112A) 项目中得到了实施, 获得较好的测试效果。当然, 对国产数据库互操作性的测试的研究工作还远不只这些, 还需要在下一阶段进一步研究和探讨。
摘要:在国产数据库的规范符合性测试和集成测试基础上, 提出一种数据库互操作测试框架。从测试框架的方法设计、测试过程、环境配置和测试用例等方面对国产数据库互操作性进行研究, 在一定程度上解决了一些国产数据库互操作性的测试技术问题, 供大家参考。
关键词:国产数据库,互操作,测试框架
参考文献
[1]满靖, 等.异构数据库信息整合系统的测试技术研究[J].微计算机信息, 2006, 22 (2-3) .
[2]吕品, 夏红霞, 李明.异构数据库互操作平台的开发研究[J].武汉理工大学学报:信息与管理工程版, 2003, 2.
[3]Berler A, Pavlopoulos S, Koutsouris D.Design of an InteroperabilityFramework in a Regional Healthcare System.Proceedings of the 26thAnnual International Conference of the IEEE EMBS, San Francisco, CA, USA.September 1-5, 2004.
[4]Gao Zhipeng, Meng Luoming, Qiu Xuesong, et al.The Interoperabilityand Shared Management Information Model.Proceedings of the First A-sia International Conference on Modelling&Simulation (AMS'07) 0-7695-2845-7/07 20.00℃2007IEEE.
[5]Jonathan Neddenriep, William G Griswold.RiverInk?An ExtensibleFramework for Multimodal Interoperable Ink*.Proceedings of the 40thAnnual Hawaii International Conference on System Sciences (HICSS'07) 0-7695-2755-8/07 20.00℃2007IEEE.
[6]Cattell R, Barry ed D.The Object Database Standard:ODMG 2.0.Morgan Kaufmann Publishers, San Francisco, California, 1997.
[7]Yan L L, Ozsu M T, Liu L.Accessing Heterogeneous Data ThroughHomogenization and Integration Mediators.Proceeding2nd IFCIS Inter-national Conference on Cooperative Information Systems (CoopIS’97) , North Carolina, (June 1997) .
国产基础软件集成应用测试研究 篇2
在GB/T 11457-2006《信息技术软件工程术语》中, 将“集成”定义为“把软件、硬件部件或两者合成为一个完整的系统的过程”。而集成应用通常是指把现有的、已成熟的软件、硬件集成后, 运用于软件产品生产和应用系统研究开发, 以及支撑应用系统的运行。国产基础软件集成应用课题中的“国产基础软件集成应用”是指“依据用户需求, 将现有的、已成熟的国产基础软件产品 (如操作系统、数据库、中间件、办公软件等) 集成后, 运用于软件产品和应用系统的研究开发, 以及支撑应用系统的运行”。
1.1 国产基础软件集成应用
国产基础软件集成应用主要是指两种或两种以上的国产基础软件集成后的应用 (见图1) , 包括:
●基于国产操作系统的集成应用, 即操作系统与数据库、中间件、办公软件中的一种或以上产品集成后的应用。
●围绕中间件的集成应用, 即支撑国产基础软件运行的操作系统为国外产品, 主要是数据库和办公软件以中间件为核心, 实现集成后的应用。
1.2 国产基础软件集成应用测试
按照GB/T 15532-2008《计算机软件测试规范》的规定, 国产基础软件集成应用测试属于集成测试, 其目的是“检验软件单元之间、软件单元和已集成的软件系统之间的接口关系, 并验证集成软件系统是否符合设计要求”, 同时, GB/T 15532-2008中规定的集成测试内容包括互操作性测试和性能测试。由于“国产基础软件集成应用测试”的目的是为了保证基础软件产品集成后能够正确、可靠、高效的运行, 因此, 测试内容限定为两种或两种以上国产基础软件集成后的互操作性测试和集成性能测试。
在GB/T 11457-2006、GJB/Z 1442-2004《指挥自动化系统互操作性等级及评估》和IEEE标准化术语集中, 互操作性的定义为“两个或多个系统或部件交换信息并相互使用已交换的信息的能力”。在GB/T 15532-2008中, 将互操作测试的内容规定为两种接口测试和控制信息测试。因此, 在国产基础软件集成应用测试中, 互操作测试是指不同国产基础软件之间的接口测试和控制信息测试, 包括:
●接口测试:所加入的软件单元与已集成软件之间的接口, 已集成软件与支持其运行的其他软件、运行程序或硬件设备的接口。
●控制信息测试:包括信号或中断的来源、目的、优先级、表示格式或表示值, 以及响应方式和响应时间等。
根据GB/T 11457-2006和GB/T 15532-2008对测试及性能测试的规定, 在国产基础软件集成应用测试中, 集成性能测试是指按照设计的场景和评价指标, 从时间特性和资源利用性两个方面对不同的基础软件组合进行测试, 从而达到能够比较分析不同基础软件组合在应用中表现出的性能。
●时间特性方面主要包括响应时间、平均响应时间、响应极限时间, 吞吐量、平均吞吐量、极限吞吐量, 周转时间、平均周转时间、周转时间极限。
●资源利用性方面主要包括输入/输出设备、内存和传输资源的利用情况。
2 测试实施
本测试共累计开发了8 193个互操作测试用例, 分别涉及操作系统之间、数据库之间、中间件之间、数据库与中间件之间、中间件与办公软件之间, 以及经由中间件的数据库与办公软件之间的互操作, 通过这些测试用例与互操作测试规程相适配, 形成了完整的基础软件互操作测试方法。集成性能测试共177个测试用例, 分别涉及硬件与通用操作系统、服务器操作系统与数据库、桌面操作系统与办公软件, 以及服务器操作系统、数据库与中间件之间的集成性能测试, 通过集成性能测试运行框架实现测试用例生成、测试脚本编译、测试任务调度及测试结果采集分析等, 形成了完整的基础软件集成性能测试方法。
2.1 国产基础软件互操作测试
操作系统之间的互操作测试
开发了数据交换、信息交换、服务共享和远程控制四个互操作层次的测试用例集, 对红旗桌面和服务器操作系统、中标桌面和服务器操作系统的20种组合进行了测试, 如表1所示。
数据库之间的互操作测试
开发了数据模式迁移、用户数据迁移、数据库访问接口兼容等几个互操作层次的测试用例集, 测试了人大金仓数据库和达梦数据库的2种组合, 组合方式如下:
●人大金仓数据库6.0和达梦数据库6.0;
●人大金仓数据库7.0和达梦数据库7.0;
中间件之间的互操作测试
开发了应用服务器与消息中间件之间的紧耦合和不同中间件之间的松耦合测试用例集, 测试了共计9种组合, 组合方式如下:
紧耦合:
●东方通应用服务器Tong Web5.0和消息中间件Tong Link/Q7.2;
●东方通应用服务器Tong Web5.0和金蝶Apusic消息中间件V6;
●东方通应用服务器Tong Web5.0和金蝶Apusic消息中间件V7;
●金蝶Apusic应用服务器V6和消息中间件V6;
●金蝶Apusic应用服务器V6和东方通消息中间件Tong Link Q7.2;
●东方通应用服务器Tong Web5.0和网驰Once OS消息中间件3.0;
松耦合:
●东方通集成中间件Tong Integrator4.1和应用服务器Tong Web5.0;
●东方通集成中间件Tong Integrator4.2和应用服务器Tong Web5.0;
●网驰集成中间件Once DI3.0和东方通应用服务器Tong Web5.0;
数据库与中间件之间的互操作测试
开发了应用服务器与数据库的互操作测试集, 包括数据源的创建和配置、基本操作、模拟应用场景测试用例集, 测试了共计8种组合, 组合方式如下:
●人大金仓数据库6.0和东方通应用服务器5.0;
●人大金仓数据库7.0和东方通应用服务器5.0;
●人大金仓数据库6.0和金蝶应用服务器V6;
●人大金仓数据库7.0和金蝶应用服务器V7;
●达梦数据库6.0和东方通应用服务器5.0;
●达梦数据库7.0和东方通应用服务器5.0;
●达梦数据库6.0和金蝶应用服务器V6;
●达梦数据库7.0和金蝶应用服务器V7;
中间件与办公软件之间的互操作测试
开发了中间件与办公软件之间基于电子表单文档的结构化数据互操作测试用例集, 测试了东方通应用服务器Tong Web和永中office之间的2种互操作组合, 组合方式如下:
●东方通应用服务器Tong Web5.0和永中Office2009;
●东方通应用服务器Tong Web5.0和永中Office2013;
数据库、中间件与办公软件之间的互操作测试
开发了数据库、应用服务器与办公软件之间结构化数据互操作尤其是压力情况下互操作测试用例集, 测试了人大金仓数据库、东方通集成中间件Tong Integrator和永中office共计2种组合, 组合方式如下:
●人大金仓数据库6.0、东方通中间件Tong Integrator4.1和永中office2009;
●人大金仓数据库7.2、东方通中间件Tong Integrator4.2和永中office2013;
综上, 在国产基础软件互操作测试中, 共进行了六大类43种组合的测试。
2.2 国产基础软件集成性能测试
硬件与通用操作系统集成性能测试
从操作系统访问硬盘、网络设备等的效率和可靠性, 如吞吐量、延迟等开发了试用例集, 共计测试了红旗桌面操作系统和服务器操作系统4种组合, 组合方式如下:
●红旗桌面操作系统V6.0;
●红旗桌面操作系统V8.0;
●红旗服务器操作系统V3.0;
●红旗服务器操作系统V4.0;
服务器操作系统与数据库集成性能测试
从数据库基本操作、并发查询、并发更新和TPC基准性能测试等几个层面对服务器操作系统与数据库组合的访问效率进行用例集设计, 开发了测试工具及用例集, 共计测试了红旗服务器操作系统和人大金仓数据库、达梦数据库3种组合, 组合方式如下:
●红旗服务器操作系统V4.0和人大金仓数据库7.0;
●红旗服务器操作系统V4.0和达梦数据库7.0;
●中标服务器操作系统V5.0与人大金仓数据库6.1;
桌面操作系统与办公软件集成性能测试
从办公软件的响应速度, 启动时间等方面进行测试用例集设计和开发, 测试了中标桌面操作系统和中标普华office, 红旗桌面操作系统和永中office共计4种组合, 组合方式如下:
●中标桌面操作系统V5.0和中标普华office5.0;
●中标桌面操作系统V5.0和中标普华office6.0;
●红旗桌面操作系统V6.0和永中Office2009;
●红旗桌面操作系统V6.0和永中Office2012;
服务器操作系统、数据库与中间件集成性能测试
开发了标准化的测试用系统, 建立了若干面向典型应用领域的性能指标, 测试基础软件组合的效率及可靠性, 形成相应的基准库。测试了中标服务器操作系统、人大金仓数据库和东方通Tong Web应用服务器共计2种组合, 组合方式如下:
●中标服务器操作系统V5.0、东方通应用服务器5.0和人大金仓数据库6.0;
●红旗服务器操作系统V4.0、东方通应用服务器5.0和人大金仓数据库7.0;
综上, 在国产基础软件集成性能测试中, 共进行了四大类13套组合的测试。
3 测试结果
通过对不同国产基础软件组合进行的互操作性和集成应用性能测试以及对重大示范应用类课题进行的验收测试, 发现了部分基础软件互操作中存在缺陷, 详细情况如下所述, 并对国产基础软件的集成应用性能进行了初步的比较分析, 如表2所示。
(1) 操作系统之间的互操作测试:通过实施6种操作系统的20种组合测试, 共发现40个缺陷, 主要分布在数据交换、信息交换、服务共享和远程控制等方面。已将上述缺陷报告给相关操作系统生产厂商, 其中宽字符串打印到标准输出中后errno值改变与ssh登陆远程操作系统返回信息编码格式不统一等7个缺陷厂商反馈已在新版本软件中修正。
(2) 中间件之间的松耦合和紧耦合互操作测试:通过实施应用服务器中间件和消息中间件等中间件的9种组合测试, 共发现4类Web服务协议不匹配缺陷和1类应用服务器使用消息驱动Bean与消息中间件实现互操作的不适配缺陷。其中, 4类Web服务协议不匹配缺陷包括13个具体缺陷, 主要分布在消息组成、消息结构、数据类型和消息附件等方面, 1类应用服务器使用消息驱动Bean与消息中间件实现互操作的不适配缺陷, 包括124个具体缺陷, 主要分布在消息头、消息设置、基本消息收发、基本链接、主题链接、消息浏览、临时队列、Selector消息选择、主题会话、复杂消息收发等12个方面。通过将上述缺陷报告给相关中间件生产厂商, 上述4类Web服务协议不匹配的13个缺陷已在新版本软件中修正。
(3) 数据库之间的互操作测试:通过实施两种数据库之间的迁移测试, 共发现41个缺陷, 具体包括37个数据类型迁移缺陷、1个视图迁移、1个模式迁移、1个存储过程迁移和1个函数迁移缺陷。通过将上述缺陷报告给相关数据库生产厂商, 上述缺陷已在新版本软件中修正。
(4) 数据库与中间件之间的互操作测试:通过实施两种数据库和两种中间件之间的8种组合测试, 共发现5个缺陷, 包括1个jdk标准支持缺陷、2个jdbc4标准方法未实现缺陷、1个ejb标准方法未实现缺陷和1个配置XA数据源的缺陷。通过将上述缺陷报告给相关数据库和中间件生产厂商, 上述5个缺陷已在新版本软件中修正。
4 结语
在国产基础软件集成应用测试实施过程中, 开展了基础软件集成应用测试方面的研究, 建立了通用的国产基础软件集成应用测试体系, 包括测试规范、评价指标、测试工具和用例集、测试管理与服务系统等, 初步形成了开展基础软件集成应用测试的能力。未来将根据基础软件产品出现的新功能和新变化, 完善和改进测试体系, 同时探索建立面向具体核心应用的性能指标体系。
国产办公软件可扩展性测试研究 篇3
由于Microsoft公司在中国甚至全世界范围内都具有其一定的品牌效应,因此虽然其产品价格不菲,但仍是许多政府采购项目和企业、个人购买的首选,其在全世界范围内享有的优势是任何同类产品都无法比拟的。2008年,Microsoft为加强其操作系统正版验证而在中国展开“黑屏行动”,让广大国内Windows用户开始对其Office产品的安全性产生了极大的怀疑。
[1]近年来,由于没有自主的开发语言和Microsoft Office源代码封锁,以及国家信息安全越来越受到关注,大力采用国产办公软件更有利于政府和国内企事业单位的信息保密工作。如何使各软件质量特性上达到一定高度,才是国内厂商自身发展和与国外厂商竞争的最好出路。
经过多年的发展,国内优秀的办公软件如永中集成Office和金山的WPS Office,[2]在标准上,普遍已完全兼容Microsoft标准,并支持开放文档标准ODF和国产文档标准UOF;[3]在基本功能上已经能够做到与Microsoft Office相差无几,并且其中的中国元素,如大量的合同范本、公文模版和中文拼写检查功能等,都更符合中国人的思维和使用习惯;[3]在性能上,由于国产办公软件相对于Microsoft Office体积小,内存占用少,因此运行速度更占优势,并且对资源的消耗也较少。
可扩展性作为软件六大质量特性中的重要内容,决定软件根据用户需求变化扩展其功能的能力,因此在国产办公软件的质量保证中非常重要,同时其也是国产办公软件与Microsoft Office抗衡的一个关键指标。对办公软件进行可扩展性测试,目的是通过测试验证其符合规定要求的能力,同时对国产办公软件的产品质量进行客观评价,为国内政府部门和企事业单位采购办公软件提供坚实的依据。
2. 国产办公软件可扩展性测试指标及方法
基于国家重大专项“核高基”课题的研究内容,本文将主要介绍办公软件可扩展性测试的相关测试指标以及测试方法,期望通过此方法达到抛砖引玉的效果,促进办公软件可扩展性测试方法的完善,最终提高国产办公软件的整体质量和竞争能力。[4]办公软件的可扩展性测试通常关注六项指标,下面将对这六个指标进行解释并对其测试方法进行详细介绍。
2.1 二次开发环境功能验证
二次开发一般指在不改变软件内核代码的原则下,对软件按照用户的需求进行修改,以实现用户期望的功能扩展。办公软件的二次开发功能应用很广泛,如现在很多OA应用系统中都需要用到文档、电子表格以及幻灯片的功能,可通过调用办公软办公软件提供的标准二次开发接口来调用办公软件,实现相应的办公软件功能,因此对办公软件的二次开发功能的测试十分必要。对此项进行考察需要考虑待测办公软件是否支持主流的编程语言,如VB、VC、Java Script等,如果存在多个办公软件进行对比测试以根据测试结果选型,可适当将支持的编程语言的数量调高。
确定支持的编程语言后,需要在办公软件的二次开发环境中,对开发中常用的代码调试手段如断点设置、单步执行、监视功能、变量查看、对象查看等功能进行测试,验证其功能执行的正确性以及错误提示的准确性等。
此项测试主要通过编写测试代码的方式来验证二次开发环境中待测的功能。在设计测试用例时,应尽量用最少的测试用例覆盖尽可能多的测试需求,同时应尽量精简每个测试用例的测试代码,这样做的目的:一是避免测试代码过于复杂可能给测试引入新的问题;二是在有效缩短测试时间和降低测试难度的同时,保证办公软件的测试质量。
基于以上两点,测试用例可以设计如下:编写测试代码定义两个变量a和b,分别赋值1和2,将两个变量相加,若值小于100,第一个变量递增加1,第二个变量递增加2,循环再次相加直至值大于或等于100。
以支持VB的二次开发环境为例,测试代码可以设计如下:
Dim a As Integer
Dim b As Integer
a=1
b=2
do while a+b<100
a=a+1
b=b+2
loop
通过上面这段简单的测试代码,即可对二次开发环境中程序调试的多项功能进行测试,例如可以加入断点并通过快捷键或选项单步执行代码,来验证断点设置和单步执行功能的正确性;同时在代码执行过程中,可以监视变量在每次循环中的值的变化,也可以在窗口中输入变量或表达式查看变量类型和值,或输入对象名查看对象属性、对象值和对象类型信息等,实现对二次开发环境的测试。
2.2 宏和扩展宏开发
在办公软件中宏就是通过用户自定义,组合在一起的一系列命令和指令,目的是帮助用户自动化实现耗时较长且重复性高的任务操作。简单的说,宏相当于一个开发接口,可以把多项复杂的操作简化并集成为一个操作,并且用户可以通过宏开发出办公软件本不具备的功能。由此看出,宏是办公软件可扩展性的一个重要体现,需要在可扩展性中重点关注。
对宏和扩展宏的考察主要是验证办公软件的基本宏功能操作,包括宏的录制、停止和宏文件的执行,以及将宏集成到菜单或工具栏、在特定条件下触发宏的执行等。
在测试过程中,可以通过录制和手工编写宏代码的方式来验证宏的功能。例如可以这样设计测试用例:在相邻10个表格中输入10个不同数字,将10个数字按升序排列,测试代码如下:
此测试用例可测试宏的录制、停止以及执行,同时也对多功能组合宏的执行进行了验证。如果办公软件具有集成宏的功能,可以通过将宏集成到指定位置,然后点击集成按钮来验证是否满足测试需求。在某些情况下我们期望触发宏的运行来提醒操作事件发生了变化,同样可以设计测试用例如:当表格中数据发生变化时,弹出对话框来提醒用户。执行录制或自行编写的测试代码即可测试宏的触发功能。
2.3 API接口调用
办公软件的API接口为用户提供了扩展办公软件功能的途径,并且这些API接口大部分是对用户完全开放的,用户可通过API接口调用办公软件的多项功能,定制满足自己需求和使用习惯的办公软件。
在对API接口进行测试时,可以首先检查办公软件手册和二次开发文档中有无API接口的功能、函数以及参数等基本信息,其次检查API接口的相关描述是否清晰、完整,最后通过编写测试代码调用API接口实现相应功能来验证API接口的正确性。需要注意的是,办公软件API接口数量众多,在以可扩展性为测试目标的活动中,对所有API接口进行测试是非常耗时的,也是没有必要的,比较理想的方式是按照功能特点将所有API接口进行分类,对于每类API接口,抽查其中的一个或若干个来进行验证即可。
2.4 组件支持
办公软件能否嵌入第三方外部程序实现功能扩展,也是其可扩展性能力的重要体现,因此需对此项进行考察。办公软件的组件支持能力主要考察其能否嵌入Active X、COM、plugin、Java Bean等常用的第三方组件。
不同的办公软件在具体的实现方法上有所不同,以考察办公软件能否嵌入一个实现加密功能的COM组件MD5为例,大致的测试过程应类似于以下操作:
首先将COM组件MD5.dll注册到系统注册表中,在Windows运行里面输入regsvr32路径+COM组件名即可完成注册,其次编写宏调用COM组件,测试代码设计如下:
最后在二次开发环境中执行以上测试代码,如果弹框并显示一长串没有规律的字符串,即说明此完成加密功能的MD5 COM组件已经成功嵌入办公软件中并实现了相应功能。Active X组件测试过程与此相同,在此不再进行叙述。在Linux下没有Active X和COM的概念,所以以上两种组件只需要在Windows环境下进行测试。
对于Plugin组件,通常办公软件通过Plugin的方式能够实现图片、音频、视频和文档等类型的文件的嵌入,由于每类文件有多种格式,在测试时应使每类文件覆盖到尽可能多的常用文件格式,如图片选择gif、jpg、bmp等,音频选择mp3、wma等,视频选择avi、swf、flv、rmvb等,文档可选择doc、xls、ppt、pdf等。
Java Bean组件的嵌入可通过将实现的功能集成为一个按钮放在工具栏中,通过点击按钮对Java Bean组件的嵌入效果进行验证,具体操作在此不再赘述。
2.5 控件开发
对办公软件的控件开发项的测试,主要考察能否将实现办公软件功能的控件嵌入其它模块或软件中,例如可考察是否能够将在文字处理、表格、幻灯程序中使用的控件嵌入IE或Firefox浏览器中。在Windows下测试时,通过编写HTML代码,在代码中调用实现相应功能的JAR包实现嵌入功能。
需要特别注意的是,在测试前不要忽略添加必要的环境变量和完成必要的权限设置,并且JDK需升级到规定的版本,否则可能导致嵌入失败。如在Linux环境下进行测试,由于IE是Microsoft的产物,并且在Linux中很少有用户使用,所以只需要对办公软件嵌入Firefox浏览器的功能进行验证即可。
2.6 获取外部数据源的支持
有时候我们期望将数据库表中的数据取出来进行查看和分析,在数据量较小的情况下,我们可通过复制粘贴的方式达到目的。但当数据量达到一定规模时,大量的数据进行复制粘贴往往需消耗大量的内存,有时甚至会导致应用程序崩溃,所以更好的方式是办公软件直接通过第三方驱动程序访问外部数据源取出数据库的数据。在测试时,可采用ODBC或JDBC的方式访问SQL Server、Oracle等主流数据库,来验证办公软件获取外部数据库支持的能力。
例如测试在Windows下通过JDBC方式访问SQL Server数据库,可以首先通过办公软件加载必要的JAR包,然后重启办公软件使之生效,接下来配置JDBC数据源,此步需要正确填写数据源名称、数据源URL(数据库IP和端口号)和驱动程序类等,数据源URL和驱动程序类许按照规定的格式填写,否则输入正确的用户名和密码也无法验证通过。配置完成后即可通过办公软件选择数据源来与数据库取得联系,进而在规定的数据库表中取得数据来验证办公软件的外部数据支持情况。这里一个常被忽略的关键是需要在测试前将JRE升级到规定版本。
在Linux环境下通过JDBC方式连数据库步骤与Windows下类似,在此不再介绍。不同的是通常情况下在Linux环境中没有图形化的数据源配置界面,如果需要使用ODBC方式连接数据库,需要安装unix ODBC包使之具有图形化界面,方便用户配置。如果对系统足够熟悉,也可以通过配置/etc下的odbc.ini和odbcinst.ini文件来完成数据源的配置,这里需要注意的是应正确填写数据源中有关driver和setup项的信息,这基于Linux中安装了正确的驱动程序,这是很关键的,大多数时候配置正确却连不上数据库,是因为没有安装正确的驱动程序。连接上数据库后,即可测试办公软件获取外部数据源支持的能力。
3. 总结
本文主要介绍了办公软件可扩展性测试的六个重点关注指标以及对应的测试方法,对其中的部分测试代码进行了分析,并对测试中可能出现的测试难点进行了说明,希望通过对国内各办公软件厂商产品的可扩展性属性进行测试,并将测试结果与国际优秀办公软件如Microsost Office的测试结果进行比较,认识到我们自身的优势和劣势,扬长避短,提高国产办公软件的质量,这才是打破Microsoft Office在办公软件领域的垄断地位,抢回市场主动权的关键,同时,这也对国家信息安全具有重大意义。
参考文献
[1]倪光南.国产办公软件的现状和机遇[J].办公自动化,2008:4-35.
[2]朱毅.办公软件掀起国标之争[N].政府采购信息报,2007,(2007-08-27).
[3]李涛.三种常用国产办公软件与MicrosoftOffice软件的测试对比[J],电力信息化,2007:89-91.
国产测试机 篇4
近年来随着国家节能减排和对污水处理达标排放的要求越来越高,国内对污水处理尤其是深度水处理的需求越来越迫切,作为水处理的核心元件——膜的应用将越来越广泛,市场需求总量也将越来越大。在我国市场上进口膜占据了相当大的份额,发展国产膜势在必行。本文以在江苏某污水处理厂测试的平板膜为例介绍西门子PLC控制系统如何实现平板膜测试系统的无人值守运行。
1 系统的硬件组成
1.1 膜组器部分
本平板膜测试系统测试的膜组器共有两种型号:分别是PB-A和PB-B型,说明如下:
PB-A,膜元件PB-145A型,材质PVDF,公称孔径0.1μm,2个取水口,参考设计通量0.55 m3/(m2·d),目标运行通量0.55~0.80 m3/(m2·d),设计临界跨膜压差10 k Pa,设计临界最高TMP为15 k Pa,元件设计需气量7.0 L/min片。PB-B,膜元件PB-145B型,材质X,公称孔径0.2μm,2个取水口,参考设计通量0.55 m3/(m2·d),目标运行通量0.55~0.80 m3/(m2·d),设计临界跨膜压差10 k Pa,设计临界最高TMP为15 k Pa,元件设计需气量7.0 L/min每片。
为了实现膜组器测试条件的一致性,所有膜组器在测试时被安装在同一个测试装置内,测试装置可以同时满足2台膜组器的测试要求。测试装置如图1所示。
1.2 现场仪表部分
采用电磁流量计、压力变送器、涡街流量街等仪表作为平板膜测试系统的现场检测元件。
电磁流量计是利用法拉第电磁感应定律制成的一种丈量导电液体体积流量的仪表。由流量传感器和变送器两大部分组成。在丈量管上装有激磁线圈,通激磁电流后产生磁场穿过丈量管,电极在丈量管内壁与液体相接触,产生感应电势,通过变送器输出4~20 m A信号,达到流量检测的目的。
压力变送器是通过高、低压侧的隔离膜片和灌充液将过程压力传递给中心的灌充液,中心灌充液将压力传递到传感膜片上,引起传感膜片的位移,从而改变传感膜片和电容极板之间的电容的差值实现介质压力的检测。
涡街流量计是根据流体振荡原理来测量介质的流量,流体在管道中经过涡街流量计时产生的流体旋涡对三角柱产生交替变化的压力,由压电信号传感器检测成电信号经前置放大器进行放大,变换成标准电信号输出的一种流量检测仪表。
膜组器测试现场使用仪表分为:电磁流量计8台用以检测进出水的流量,分别是1#膜组器上流量、1#膜组器下流量、2#膜组器上流量、2#膜组器下流量、1#产水泵出口流量、2#产水泵出口流量、进水泵流量、回流泵流量;涡街流量计1台,用以检测平板膜测试系统的进风量;压力变送器4台,用以检测膜组器的工作压力,分别是1#膜组器上压力、1#膜组器下压力、2#膜组器上压力、2#膜组器下压力,检测两组膜组器的出水压力。
1.3 现场电气部分
平板膜测试系统采用电机功率为22 k W的离心水泵一台,安装在污水处理厂的A/O2池上作为系统取水用的进水泵,通过进水泵把污水引至缓冲槽中;采用电机功率为11 k W的潜污泵一台安装在测试系统的回流槽中,实现污水回流,达到液位平衡的目的;两台产水泵选用1.1 k W的电机作为驱动源和与之配套的2台气动阀门组成两套产水泵组,实现平板膜测试系统产水之用。
1.4 自动控制部分
采用先进的PLC控制技术实现本测试系统的自动控制功能。PLC是可编程序控制器(Program⁃mable Logic Controller)的简称,是一种数字运算的电子系统,专为在工业复杂环境下应用而设计。其中德国西门子公司S7系列可编程序控制器能够适用于极端复杂的工业环境,具有很强的抗干扰能力和很高的可靠性,对工作电源没有特殊要求。为了降低测试系统的硬件成本,PLC采用西门子S7-300系统来实现本测试系统的数据采集与逻辑控制。本控制系统设置一台工程师站实时采集现场膜组器运行的状态数据,工程师站采用以太网通讯形式与S7-300的PLC连接,实现整个PLC控制监控系统。自动控制系统组成示意图如图2所示。
2 工艺顺序及控制要求
该测试系统是依托江苏某污水处理厂进行平板膜试验。因为该污水处理厂进水量很小,无法满足二十四小时运转的需要。所以该厂污水处理的时间为早上八点半运行,下午六点结束。为此平板膜测试系统的运行时间必须在污水处理厂正常运行时间内。因为该测试系统不属于污水处理厂所有,测试单位无法安排操作人员蹲守现场启停设备,因此无人值守运行成为该测试系统的关键。
在平板膜测试过程中,两台膜组器均要求独自产水。每台膜组器分上层膜和下层膜两个产水区。上、下层产水管汇集后引入产水泵。因而测试系统设有两套产水泵组,正常运行顺序是:先打开A产水泵组产水气动阀A,3秒后,产水泵A变频运行,达到设定频率后,继续运行510秒后,停产水泵A,3秒后关闭产水气动阀A,同时打开B产水泵组产水气动阀B,3秒后,产水泵B变频运行,达到设定频率后,继续运行510秒后,停产水泵B,3秒后关闭产水气动阀B,两套产水泵组顺序进行产水运行。
3 PLC程序编写
3.1 系统时间读取程序
为了实现系统的无人值守运行的功能,需要让PLC控制系统的系统时间与北京时间同步,使用系统功能块SFC1(READ_CLK)可以读取控制系统CPU的系统时间。系统功能块SFC1的输出参数“CDT”允许接收的时间和日期的格式是“DATE_AND_TIME”。数据类型“DATE_AND_TIME”的时间和日期是以BCD码的格式存储在8个字节里。本次编程使用系统功能块SFC1(READ_CLK)读取系统时间存储以DB21.DBB2开始的8个字节内,根据系统功能块SFC1(READ_CLK)的使用功能介绍,存储时、分、秒的三个字节为DB21.DBB5、DB21.DBB6、DB21.DBB7,因为系统功能块是以BCD码的格式进行存储的,故需通过中间变量进行数据类型的转换。读取转换的具体程序如图3~图6所示。
3.2 系统启停程序
平板膜测试系统的自动启动的顺序是:先打开测试系统的曝气阀门,曝气阀门开到位后启动产水机组。测试系统的进水泵是24小时不间断运行,然后通过回流槽中的作为污水回流用的潜污泵24不间断运行实现平板膜测试系统的液位平衡。产水系统的运行是以曝气阀门打开为前提,曝气阀门开到位后启动产水系统,因此通过时、分、秒三个时间进行比较来触发脉冲启动曝气阀门达到系统自动运行的目的,两套产水机组内部的逻辑运行程序就不在此一一叙述。系统运行时间与设定的开机时间比较的程序如图7所示。
平板膜测试系统的自动停止的顺序是:先停产水机组,产水机组停止关闭系统的曝气阀门,至此平板膜测试系统就完成了一天的自动运行。当系统的运行时间与设定的停机时间一致是触发停机脉冲指令,停止产水机组,两套产水机组无论A组还是B组在运行过程中接到停机指令时,立即停止运行,同时通过两套机组之间的逻辑关系促使另外一套机组不会自动运行,当产水机组停止后关闭曝气阀门。系统运行时间与设定的停机时间比较的程序如图8所示。
4 结束语
本国产平板膜测试系统经过半年来的运行测试,收集到许多可靠的运行数据,为平板膜的批量生产积累了丰富的经验,达到了测试的目的。基于PLC控制的无人值守系统经过国产平板膜测试系统半年来运行的检测,系统零故障、运行可靠,降低了系统的操作维护成本的投入。无人值守的控制方案也具有编程简单方便,使用广泛等特点,值得推广使用。
参考文献
[1]上海过滤器集团有限公司.新型膜组器技术参数与性能测试设计说明[Z].2012.
[2]胡青龙.浅析PLC控制系统在能源化工的应用[J].机电工程技术,2015,44(11):101-104.
[3]杨小元,于殿泓.连接器透气膜防水测试技术研究和应用[J].测控技术,2013,32(11):144-146.
[4]张树国.一体式平板膜MBR处理城市污水及膜污染防治研究[D].上海:同济大学,2004.
[5]张树国,吴志超,顾国维.一体式平板膜生物反应器污水处理研究[J].电力科学与工程,2005(1):13-16.