基于云计算的软件测试平台的设计与研究
2018-06-11张雪亚
张雪亚
(宝鸡文理学院计算机学院,陕西宝鸡721016)
软件测试平台的设计是在云计算基础上实现的,通过对软件程序设计可为用户提供智能服务[1]。基于云计算的测试平台可大大提高软件运行可靠性,并节省测试时间,将云计算与平台结合在一起,共同构建一套完整的测试系统。云计算软件测试平台利用云环境搭建,并在节点上构建虚拟环境,模拟场景完成测试任务[2]。交互平台是基于面向用户界面控制条件实现的,对于系统中各个模块信息需要实时管理,云计算软件可有效利用该平台进行大量资源动态扩展,进而节省测试时间,是一种较好的测试方案。由于传统测试平台存在耗费成本高、测试效果差的问题,不能满足现代人们对于软件平台高精准监测要求[3-4]。
针对上述传统平台存在的问题,提出设计一种基于云计算的软件测试平台。充分讨论软件开发所需的平台构建条件,设计软件测试项目管理工具,对于测试平台模拟进行深入研究。通过实验设计可得出实验结论。由结果可知,该平台对软件进行了充分检验,测试效果较好。
1 云测试平台层次模型设计
基于云计算的软件测试平台是一个复杂综合模型,需根据实际功能设计测试平台,该平台以层次结构为主,共分为4层,分别是平台资源层、资源管理层、服务层和访问管理层[5]。云计算软件测试平台各个层次之间是通过有机结合方式连接的,通过云计算技术可提高软件测试平台工作效率[6]。测试平台层次模型设计如图1所示。
图1 测试平台层次模型设计
1)平台资源层
基于云计算的软件测试平台资源层构建是以软件设备、硬件设施为基础,模拟实际运行环境进行检测的。充分发挥云计算平台管理优势,可实现资源共享。
2)用户管理层
针对用户管理层是由后台管理人员在平台上互相交流,共同为用户提供资源访问权限和服务,云计算软件测试平台的用户管理层要求对技术人员进行权限设置,只有具有权限的人员才能对后台访问。采用访问控制技术,可将用户所有需要访问的资源绑定,并对私人信息加密,可有效对资源进行管理[7]。用户管理层内部结构设置如图2所示。
图2 访问管理结构图
3)资源管理层
对于资源管理层的构建是以高效管理为基础的,对于不同管理任务对应不同的测试环境,云计算软件测试平台可为具体测试任务提供标准化管理定义,由此可完成规模较大的统一测试。资源管理模块结构图如3所示。
图3 资源管理结构图
4)服务管理层
在云测试环境下对平台中的边界值进行检测,服务管理正是在该环境下对不同用户访问权限、数据库和网络进行应用管理的,对于病毒清除与系统防护也提供相应服务管理工作[8-9]。同时,服务管理层也对计费服务进行管理,采用管理方式是按照具体耗费时间计算的,用户可对服务速度、效率进行评价。对于管理层报告,需对结果进行评价,并对记录进行分析,进而填写报告结果,如果在测试过程中出现误差,需启动缺陷管理功能,并对存在的误差进行处理。
2 测试平台系统结构
在云计算平台下结合层次模型结构,设计基于云计算项目的测试平台,基本架构如图4所示。
图4 测试平台系统结构
虚拟环境中节点的控制可为系统管理提供服务数据,采用集群控制方式来管理虚拟节点中各种设备,可将每一个集群都集中在控制器下进行统一管理;图4中的云控制器主要负责对不同集群进行管理与控制,并利用管理工具执行云资源规划建设,由于云存储服务器需要对外界连接,为此也需与外界之间保持云存储服务协议,支持系统使用分布式数据存储技术[10];控制器和存储服务器可使用多种集群数据资源,用于测试软件项目,并采用管理工具配置测试条件,动态调整各种资源,促使用户能够通过对客户端的直接访问来完成各种搜索工作。
3 云测试平台PaaS构建
完善基于云计算的软件测试平台,需构建PaaS平台即服务,进而设计并实现云计算项目管理工作,进而优化用户操作界面。
3.1 测试项目管理工具
表1 项目管理工具
3.2 对资源调用方法
针对项目管理资源调动方法,需对基础设施即服务IaaS平台资源直接访问与使用,由此可获取平台动态消息[14]。在实际操作中,通过对平台资源的访问与使用可完成应用程序编程接口调用,其中包括身份识别、计算管理和镜像管理等工作,具体资源调用类型如表2所示。
表2 资源调用类型
通过对上述表2中资源类型的说明,能够与各种组件完成信息之间的传递。根据测试需求,可将云计算平台的资源分配到各个用户邮箱或者能够等待平台测试。随时监测云计算环境下的软件测试平台运行状态,对应用程序编程接口调用时,使用XML格式。用户在选择不同类型测试平台镜像时,需启动开关和虚拟服务等操作利用云测试管理工具完成接口调用工作。用户根据不同实验环境,使用组件各项功能可实现测试环境快速布置。
3.3 系统业务流程
用户通过对浏览器登录和云计算检测工具自动申请项目测试,配置测试矩阵和虚拟服务器认证等操作。系统为用户提供了基于权限分配和角色选择功能,利用该功能可将系统分为管理员、项目负责人和普通员工等各种成员角色[15]。不同角色具有不同工作范畴,同样也具有不同工作权限,可运行和使用不同云测试资源。对于用户存储、计算等资源使用,需利用Keystone执行器完成组件认证工作,经过长期保存和使用,可利用Swift组件完成云存储服务[16]。
4 实验
实验测试平台所采用系统是Philips的2000系列,根据实际应用程序来验证基于云计算的软件测试平台的设计合理性。
4.1 实验测试平台界面设置
实验测试平台是在VC++6.0环境下研发的,利用分割技术将文档的窗体进行分割,并实现资源程序和分割结果,其中包括对语法分析和插装,系统联机以及通信显示。测试平台界面设置如图5所示。
4.2 实验过程
在实验平台上应用系统软件进行实验验证,具体内容为:实验平台对系统操作执行进行引导,控制LED和数码显示的具体程序和实际覆盖率。经过用户选择的实验平台,在界面中输入测试目标,选择覆盖率实验测试种类,通过后台语法分析计算覆盖率,进而对软件测试平台设计合理性做出评价。图6是软件程序中词法的分析结果示意图。
经过词法分析之后,通过测试平台可生成多种插装需要的数据,由图6可知,分割左侧窗口为源代码,右侧窗口为插装代码。
对系统进行验证用例输入和选择界面,需将整体的测试实验条件都用作外部输入,根据选择覆盖范围大小测试系统中软件平台插装情况,其界面如图7所示。
图5 测试平台界面设置
图6 软件程序中词法分析示意图
图7 输入界面
4.3 实验结果与分析
利用上述设计实验平台对系统软件程序中覆盖率情况展开分析,按下Key1键,通信界面显示的数据情况如表3所示。
表3 通信界面显示的数据
由表3可获取通信界面显示数据,通过对数据统计与分析,可获得覆盖率测试结果。
为了提高实验测试可靠性,将传统设计测试平台与改进设计平台对覆盖率测试结果进行检验,对比情况如下所示。
表4 两种平台覆盖率测试结果对比
当语句覆盖率达到90%以上时,分支覆盖率应大于等于80%,才可被认定为软件是经过测试平台检验的。由表4可知:采用传统平台对软件进行测试时,分支覆盖率均小于80%,由此可看出软件是未经过测试平台检验的;而采用改进测试的平台分支覆盖率均大于80%,由此可看出软件是经过测试平台充分检验的。
4.4 实验结论
利用实验平台对软件进行检验时,可得到分支覆盖率和语句覆盖率的大小。采用传统平台对软件进行测试时,分支覆盖率均小于80%;而采用改进测试的平台分支覆盖率均大于80%。由此可看出改进设计的软件测试平台具有良好的测试效果。
5 结束语
云计算是现代各个科技领域被广泛应用的新型技术,其应用前景十分广阔,作为未来信息发展的领军技术,对于应用软件检测是一次性改革。构建层次模型和结构,应用测试实例验证该平台设计合理性,并通过实验结果可知,该平台对软件测试效果较好,在未来研究中,可进一步深入应用。
参考文献: