基于云服务的软件自动化测试系统设计探究

2020-12-28 10:13侯昌平朱杰媛
通信电源技术 2020年17期
关键词:测试资源功能

高 翔,侯昌平,朱杰媛

(南京国电南自电网自动化有限公司,江苏 南京 210003)

0 引 言

随着当前信息科技的快速发展,软件开发领域竞争逐渐激烈,市场对软件质量的要求不断提高。软件系统测试需要一种新的技术提高其测试质量并降低其成本,而传统软件的测试已不能满足当前测试的需要。因此,通过分析自动化软件系统测试的需求,并充分考虑今后在测试中的变化因素,开发了一套利用云服务为平台对自动化软件进行测试的专用系统,使自动化测试具备了快捷、可靠以及易于掌握等优势,降低了运营成本,加强了软件在实际测试时的监控水平[1]。

1 云服务自动化软件系统测试需求的分析

云服务自动化软件系统测试是针对确保软件开发质量而研究的一套系统,结合了云服务的优势,能够提供给用户更加安全、快捷以及方便的软件测试型服务。云服务自动化软件系统测试流程如图1所示。

图1 系统总体业务示意图

1.1 传统自动化的测试存在的问题与需求

传统自动化的测试存在的问题主要有以下3个方面。第一,客户与管理层无法在测试过程中进行实时跟踪。第二,测试工作人员必须手动安装和部署测试环境,并记录测试Bug,以便系统开发完成后进行验证测试。第三,在传统测试中,不能快捷方便地保存信息数据和文档[2]。因此,需要利用云服务优势开发设计一套自动化管理测试系统,使得用户可以通过浏览器使用和访问云端的自动化软件测试系统。该系统能够解决测试工作人员必须手动安装和部署测试环境的问题,并且能够实时反馈自动测试的结果,节约了测试软件的成本。

1.2 云服务自动化软件系统测试功能与需求的分析

1.2.1 云服务系统功能分析

云服务系统功能是把云计算的资源提供给用户进行使用,功能包括实时信息反馈、实时资源监控以及配置设备管理等。

1.2.2 自动化系统测试的功能分析

系统测试必须支持自动化系统测试的执行、管理、发布以及结果汇总等过程,而且必须具有测试结果自动获得、提交测试简单以及测试结果能够回放与对比等功能,从而使测试管理人员与负责的工作人员能够快速便捷地维护测试的项目[3]。需要注意,运行系统是在公司云环境下工作,所以系统安全特别重要。本系统通过灾备设计、角色划分以及管理权限限制功能等达到系统安全的目的。

1.2.3 非供能系统分析

非供能系统的功能需求包含系统性能需求、环境客户端需求以及环境系统需求等。系统性能需求是从系统性能属性方向出发,对系统移植性、使用性、可靠性以及安全性等方面进行规范。环境客户端的需求包含系统人机互动上的环境方面需求,如浏览器的环境、客户端平台操作环境等[4]。环境系统需求包含服务器底层的技术性指标,如硬盘、内存以及处理器等硬件设备在性能上的需求。

表1 硬件的环境需求

2 云服务自动化软件系统测试的设计

2.1 云服务系统的设计

2.1.1 虚拟化的资源设计方案

通过对虚拟化的资源研究分析,虚拟化的资源设计方案选用KVM技术虚拟化桌面。硬件虚拟的方案结构如图2所示。在硬件设施基础上,利用Hypervisor管理器将宿主资源虚拟成虚拟的硬件,并且要进行虚拟运行实证。Hypervisor是在操作平台与物理服务器之间运行的中间层软件,能够许可多个平台操作与共享应用硬件,并且能够协调被访问服务器所有的虚拟机与物理设备,也被称作VMM虚拟机的监视器设备[5]。

图2 虚拟化硬件方案

2.1.2 服务云端访问的设计

服务云端访问的功能是把自动化的测试功能通过服务形式供给用户使用。本设计把自动化系统测试设计成B/S结构,因此用户只要将浏览器定为客户端出入URL访问地址,输入正确的密码和用户名登录,就能够使用自动化系统测试服务进行相关的操作。系统设计的界面为扁平化方案,重点突出了易操作和界面简洁的特点。

2.2 自动化服务测试流程的设计

自动化服务测试流程包括测试反馈结果、执行测试、设计测试、任务测试创建以及测试需求等过程。第一,客户登录的同时要提交对测试的要求。第二,测试经理有权限登录和查看各项测试的要求,以便能够依据要求创建相应的任务书和制定相应的计划,并将测试任务合理分配给相应的工程师及设计师。第三,测试设计师有权限登录和查看相关任务,以便能够依据测试计划设定运行参数配置、设计测试场景、组织测试数据以及建立测试脚本等。第四,系统能够自动发送测试的内容任务,能够调动主机上传测试脚本并执行测试。第五,测试工程师在测试过程中依据实际情况对测试参数进行修定,并对测试中存在的缺陷加以管理。第六,完成系统测试后,测试经理与用户能够在系统里查看结果,并且能够打印报告。

3 云服务自动化软件系统测试实现与测试

3.1 云服务系统功能实现

本文依据测试任务处理的虚拟调度实现具体模型调度的算法。首先需要确定云服务调度资源函数目标,其中能够完成全部调度任务测试最大的数量和各个虚拟机完成任务所用的最短平均时间分别为:

式中,n为云服务数;i为任务;task为任务i完成的时间;j为虚拟机;tij为完成虚拟任务共用时间;tasknum为完成任务总数。完成任务时间由两部分组成,一部分为任务列表等待时间,另一部分为任务物理执行时间。模型算法约束的条件:

式中,xj为虚拟完成任务总数;Cij为任务资源利用率;hj为剩余资源利用率;i0为任何任务;taski为任务时间;deadline为任务结束时间。式(3)表示全部虚拟机需要任务完成总数不大于任务表中任务的总数,任务的队列常常会出现一些丢失,不能完成任务;式(4)表示虚拟机任务分配资源的利用率与物理机资源剩余利用率的比较;式(5)表示针对任何任务测试,分配于物理机占有资源的利用率在0~1;式(6)表示所有任务完成的最终时间。

3.2 云服务自动化软件系统测试的功能实现

3.2.1 功能登录的实现

功能登录与系统登录的功能相同,主要是确保系统安全,对用户身份进行权限认证和登录记录,为用户进入云服务自动化软件系统测试提供安全的验证与权限。用户登录需要输入密码与用户名,调用Login启动其登录服务,随后利用Loginchecko检查用户权限与角色,通过后登录到云服务自动化软件系统测试相应界面。如果登录失败,将自动退出。

3.2.2 自动化功能测试功能的实现

自动化功能测试功能的实现是在测试开源Testlink系统管理的基础上,以设计、分析以及需求实施二次系统的开发。其中,Testlink使用Smarty引擎模板把HTML代码与PHP代码实施逻辑分离,通过后台进行程序修改,与前端的人员互不影响。具体的实施方案分为两个方面。一方面,将所有的导航目录放于界面顶部的导航栏里,方便用户进行相应的选择。用户可以不用多次在主页与选择页面进行切换。另一方面,同一界面的设计风格,模块页面展示使用面板divclass样式,面板内均设有按钮,样式为button dass,表控件使用input class样式。

4 结 论

本文通过分析云服务自动化软件系统测试需求,研究开发了云服务自动化软件测试系统,完成了对自动化功能系统的测试。在设计云服务自动化软件系统测试过程里,系统具有操作简洁和易懂的优点。

猜你喜欢
测试资源功能
也谈诗的“功能”
99Tcm-MIBI显像在甲状旁腺功能亢进术前诊断中的应用价值
基层弄虚作假的“新功能取向”
基础教育资源展示
幽默大测试
一样的资源,不一样的收获
奔驰S级香氛功能介绍
“摄问”测试
“摄问”测试
“摄问”测试