基于B/S架构的雷达健康管理软件测试方法研究
2021-11-30陈庆芬
陈庆芬
中国电子科技集团公司第三十八研究所 安徽 合肥 230088
引言
随着雷达设备规模的显著增加,面临的状态监测和维修保障任务越来越复杂。健康管理(PHM)是用于雷达装备状态监测和维修保障的一项新技术,已在国内外先进的武器装备上成功应用。在雷达装备中也迫切需要使用这项新技术,以便提升雷达故障预测、状态监测和维修保障的能力。
B/S模型结构可实现数据管理与用户管理更大的灵活性与开放[1]。在B/S结构下,在客户端只需要安装浏览器及相关协议软件,即可访问服务器。软件的开发、维护与升级只需在服务器端操作,缩短了系统开发周期,降低了维护费用[2]。
本文介绍了雷达健康管理软件和B/S架构技术的基本概念和应用背景,重点对B/S架构的雷达健康管理软件测试方法进行了论述,介绍了适用于雷达健康管理软件功能测试、性能测试、接口测试等的具体方法和自动化测试工具。
1 雷达健康管理
雷达健康管理是指利用雷达海量的测试数据、故障诊断结果、维修资源信息以及其他相关信息,对雷达系统的健康状态和执行任务的能力进行实时分析评估及预测,并根据分析评估结果自动进行维修决策,以实现雷达全寿命周期维修保障的自主化和智能化。
2 B/S架构雷达健康管理软件测试方法
2.1 静态测试
在静态测试阶段,选取静态分析工具Find Bugs和代码质量工具Sonar Qube对代码质量进行检查和管理。
Find Bugs,是Eclipse、IDEA等开发环境下的一个插件工具。检查类或者jar文件,将字节码与缺陷模式进行对比以发现可能存在的问题可以检查出包括空指针引用、无限递归循环等问题。Find Bugs还为用户提供定制Bug Pattern的功能,可以根据需求自定义Find Bugs的代码检查条件。
Sonar Qube是一个代码质量管理平台。通过量化的方式度量代码质量的变化,从而可以方便地对不同规模和种类的工程进行代码质量管理。支持超过25种编程语言。可以集成不同的测试工具,代码分析工具,以及持续集成工具。开发中使用提供重复代码、编码标准、单元测试、代码覆盖率、代码复杂度、潜在Bug、注释和软件设计报告提供了指标历史记录、计划图和微分查看提供了完全自动化的分析。
2.2 功能测试
Selenium 2是一套基于WEB应用的测试工具,通过它来执行模仿用户在网页上的操作的测试脚本,测试人员可以对Web应用进行功能测试[3]。
Selenium测试直接运行在浏览器中,像真正的用户在操作;通过记录与浏览器的交互以创建测试用例,可以使用播放选型重新运行测试用例,不需要任何编程逻辑来编写其测试脚本。可以测试与浏览器的兼容性,测试系统功能,支持自动生成Java、.Net、Perl等不同语言的测试脚本,支持在浏览器包括IE(7、8、9、10、11),Mozilla Firefox,Safari,Opera等。
2.3 性能测试
对基于大数据平台的B/S架构雷达健康管理软件性能测试主要包括三个主要的方面:一是数据摄取和吞吐量,在这个阶段,测试人员验证系统使用来自各种数据源的数据有多快。测试涉及队列在给定时间内处理不同标识的消息。它还包括如何快速地将数据插入到底层数据存储中,例如插入到MongoDB和Cassandra数据库中的速率;二是数据处理,它涉及验证执行查询或Map Reduce作业的速度。它还包括当底层数据存储填充在数据集中时,测试使用隔离规则方式处理数据;三是子组件性能,雷达健康管理软件由多个组件组成,必须单独测试这些组件。例如,查询、计算的速度等。
2.4 接口测试
Postman是一款功能强大的网页调试与发送网页HTTP请求的Chrome插件模拟各种HTTP requests:从常用的GET、POST到RESTful的PUT、DELETE等等。甚至还可以发送文件、送出额外的header人性化的Response整理。一般在用其他工具来测试的时候,response的内容通常都是纯文字的raw,但如果是JSON,就是塞成一整行的JSON。这会造成阅读的障碍,而Postman可以针对response内容的格式自动美化。JSON、XML或是HTML都会整理成我们可以阅读的格式内置测试脚本语言,且支持编写测试脚本,可以快速地检查request的结果,并返回测试结果。
3 结束语
本文首先对雷达健康管理软件呈现的智能化、组网化、大数据的趋势进行了分析,并结合B/S架构设计对数据管理与用户管理具有更大的灵活性与开放性等特点,对B/S架构应用于雷达健康管理软件设计的必要性进行了分析。本文内容主要对基于B/S架构的雷达健康管理软件测试方法进行了论述,提出了静态测试、功能测试、性能测试和接口测试的测试思路。结合实际项目应用,深入阐述了目前主要使用的各类自动化测试工具的使用特点及方法。使用本文介绍的方法,提高了雷达健康管理软件测试的有效性、深入性、覆盖度及测试效率,也为后续基于大数据平台的雷达健康管理软件测试打下了良好的基础。