前言:想要写出一篇引人入胜的文章?我们特意为您整理了国产化平台信息系统软件测试技术范文,希望能给你带来灵感和参考,敬请阅读。
摘要:国产化平台软件的发展及非国产化软件的使用制约促使信息系统越来越多地采用国产化平台。信息系统软件基于国产化平台研发对于信息系统的软件测试也带来了新的挑战。根据国产化平台信息系统软件技术现状,分析了软件测试所面临的问题,分别从软件测试不同维度研究,提出了适用于国产化平台信息系统的软件测试技术。
关键词:国产化平台;信息系统;软件测试
计算机软硬件实现自主可控是国家重要的发展规划,近年来国产化软件平台取得了长足发展,操作系统、数据库、办公软件、中间件等均已出现不少商用国产化产品,为信息系统能够采用国产化平台进行研发奠定了基础。软件测试作为软件研发领域中的重要一环,直接影响软件产品质量,一直备受重视[1]。软件测试与软件开发紧密相连,软件研发采用国产化平台实现,这对软件测试有着重要的影响,决定着软件测试所需要的技术,因此研究国产化平台下的软件测试具有重要意义。相比于非国产化软件平台,国产化软件平台起步晚,发展时间短,其对应的软件测试技术也比较欠缺,尤其是在配套的测试软件方面。本文通过分析软件测试关键活动,根据国产化软件测试技术现状,提出一种适应于国产化平台信息系统软件测试技术。
1信息系统软件测试分析
信息系统软件测试在不同研发模型中所分阶段不同,而区别于不同的研发模型,整个软件测试过程一般都需要经过测试策划、测试设计、测试执行、测试总结四个基本活动。测试策划活动主要进行需求分析,识别软件测试项、测试所需软硬件、人力资源等;测试设计活动主要根据识别的软件测试项设计测试用例,包括手工测试用例、自动化测试用例等;测试执行活动通过手工、自动执行测试,发现软件缺陷,进行软件缺陷归零验证;测试总结活动对测试执行结果进行整理分析,编写测试报告。同样的,基于国产化平台研发的信息系统软件测试亦需要经过测试策划、测试设计、测试执行、测试总结四个活动。1)测试策划活动进行需求分析、识别软件测试项依赖于软件自身需求,其与研发平台具有无关性,识别测试所需的软硬件则取决于研发平台。目前国产化平台的测试工具也面临着起步晚、发展时间短的问题,应用于国产化平台的软件测试工具种类远没有丰国产化平台软件测试工具丰富[2]。测试策划过程中需要识别出可用于国产化平台的测试软件是其要解决的重要问题,一方面取决于已有的测试软件,另一方面取决于信息系统的技术实现。2)测试设计活动所编写的手工测试用例取决于被测信息系统软件自身,而编写自动化测试用例则取决于所使用的自动化测试平台,不同的自动化测试平台所适用的软件类别不同。基于国产化的自动化测试平台选择范围小,且成熟度相比于非国产化平台并不高。因此测试设计阶段所面临的是被测信息系统软件的可实现自动化测试的用例覆盖程度问题。3)测试执行活动一方面是执行测试用例,另一方面还需要对软件缺陷进行分析定位,对被测信息系统的内存、CPU、网络、磁盘IO等指标进行监控,其对国产化平台依赖性较高。国产化平台的操作系统、数据库、中间件乃至办公软件所提供的分析、监控工具直接影响着软件测试的执行和软件缺陷的分析定位。目前,国产计算机环境的应用面、规模相对较小,应对复杂环境时,兼容性、综合性能、可靠性验证不充分,缺乏有效的诊断分析工具和测试评估环境[1]。测试执行过程中面临着如何充分利用国产化平台所提供的分析和监控工具完成测试执行、如何通过第三方辅助软件解决国产化平台自身不具备的功能完成测试执行的问题。4)测试总结活动为测试过程的最后一个活动,对测试执行的结果进行整理分析。对于国产化平台研发的信息系统,测试总结需要分析前几项测试活动的结果形成测试报告,还需要对测试技术形成积累,为基于国产化平台信息系统的软件测试持续发展提供经验。图1为信息系统软件测试活动图以及基于国产化平台进行软件测试活动的所要解决的关键问题。
2软件测试技术应用
2.1测试策划
国产化平台信息系统软件测试策划活动所面临的主要问题是识别测试所需软件项,应用于项目,需要结合项目自身特点。每个项目的系统架构、软件开发语言、运行环境等各不一样,因此在识别时结合被测软件,从三个方面解决测用所需软件:开源软件[3]、商用软件、自研软件。图2所示在项目测试过程中开源软件、商用软件、自研软件选择比重,其中开源软件选择优先,其次可通过自研软件、商用软件覆盖测试所需。1)开源软件具有成本低、灵活性高、自由的优势,国产化平台信息系统识别测试所需软件项可以优先从开源软件中选择,获取满足项目软件功能测试、性能测试、接口测试、安全测试、可靠性测试等测试类型的开源软件。2)开源软件在支持方面、文档方面、稳定性方面不如商业软件,对于测试软件要求高的项目可选择商用软件进行支撑。商用软件具有支持度高、日常更新、技术难度低的优势,采用商用软件可以避免测试过程中的一些无法解决问题。3)商用软件所提供的是适用于大多数用户需求的接口,对于被测软件,在不同的测试阶段、不同测试类型中,存在商用软件无法实现测试内容的场景,需要项目通过研发专用测试工具以实现测试覆盖,解决测试软件问题。
2.2测试设计
测试设计过程中可以通过编写自动化测试用例代替手工测试的反复操作,自动化测试用例覆盖率高可以有效地提高测试用例复用率和执行效率。基于国产化平台信息系统软件自动化测试在采用的自动化测试平台上,可以通过不同维度的测试用例设计增加自动化测试用例覆盖率,即分别从单元测试、接口测试、GUI测试分别设计自动化测试用例[4]。自动化软件测试用例设计一般遵循图3所示的三角形用例覆盖率比例,单元测试与代码直接相关,软件代码改动对单元自动化用例的影响较小,单元测试自动化用例覆盖率最高,其次是接口测试自动化用例。GUI自动化测试用例实现难度高,且受代码改动影响大,因此其自动化测试用例覆盖率最低。国产化平台信息系统软件自动化测试平台缺少QTP、Loadrunner等工具,目前只有少数自动化平台支持国产化操作系统,如kylinTOP自动化测试工具,除此之外,还可以采用Selenium、Python等实现自动化测试。此类软件对于GUI自动化测试与非国产化软件类似,因此国产化平台信息系统自动化测试用例亦需要遵循图3的测试用例覆盖率。
2.3测试执行
在测试执行过程中需要对信息系统软件缺陷进行分析定位、对信息系统的指标进行监控。信息系统的缺陷分析和指标监控包括两部分,一部分与依赖的国产化平台相关,另一部分与信息系统软件自身相关。与国产化平台相关的缺陷分析和指标监控可以采用国产化平台自持软件,目前国产操作系统、国产数据库软件、国产中间件软件等均具备满足监控平台自身指标的工具[5]。基于国产化平台的第三方测试工具如WGCLOUD、PIGOSS、SugarNMS等可以实现多平台、分布式监控。表1为这三款工具软件可支持的国产化平台以及可用于信息系统软件测试的监控项。
2.4测试总结
测试总结活动是对之前几项测试活动的总结,在测试执行完成后对各项测试活动进行整理分析,形成测试报告。基于国产化平台的信息系统软件研发还未广泛开展,对应的软件测试技术也需要不断的探索与研究,相比于非国产化平台的软件测试,国产化平台信息系统的软件测试不再仅限于单一项目,还需要与其他项目的测试策划相关联。因此测试总结活动还需要以资源池的形式进行技术积累,将整个测试过程中的软件测试方法、测试工具、测试分析等进行技术储备与传播,为其他国产化平台的软件测试提供借鉴。同样的,在其他项目的软件测试策划活动中,可以从资源池中的技术储备选取用于支撑整个项目测试的技术。
3结束语
随着国产化平台软件的发展,信息系统将越来越多地采用国产化平台进行研发,其对测试技术的要求也越来越高,对国产化平台软件测试技术的研究将更加迫切。通过本文对软件测试技术的介绍,以期可以为国产化平台软件测试的发展提供一份积累,促进我国软件质量的提升。
参考文献
[1]薛岩,姜鑫,陈坤乔.指挥信息系统软件测试研究[J].工业控制计算机,2020,33(6):25-27
[2]沈雷,左芸,解群,等.国产化平台自主可控测试工具研究设计[J].数字技术与应用,2019(2):154-158
[3]沈雷,杨竣铎.基于国产操作系统的开源测试工具整合方案研究[J].数字技术与应用,2020(8):80-82
[4]王晖.国产操作系统自动化测试平台技术研究[J].无线互联科技,2017(10):48-51
[5]李奕彤,聂帅,张永伟,等.基于国产化环境的信息系统自动化运维技术[J].指挥信息系统与技术,2019,10(4):91-95
作者:薛岩 刘翠翠 单位:中国电子科技集团第二十八研究所