孙锐
当今世界,软件行业的发展速度已经超乎我们的预想,怎样才能高质高效的进行软件的开发和测试,怎样才能最大限度地缩减人力成本、减短测试的周期,怎样才能投入最少的成本而获得最好的软件产品,这些问题值得每一个软件开发公司认真思考。人工测试效率低,自动化测试不仅资金投入大而且效率同样不高,这些方式已经无法适应时代的发展。以云计算服务为基础的软件测试既方便快捷,又可以获得最准确的测试结果。企业不需要考虑测试过程中可能出现的一切疑难问题,只需支付相应的服务费给云计算服务商,便可坐等结果。所以,毫无疑问,基于云计算软件测试技术的开发和研究将会越来越深入。
(一)何为云计算
云计算的概念并不复杂,主要分为狭义和广义两种。前者表示的是通过互联网的形式以按需、易扩展等方法获取一切需要的信息技术基础设施的交付以及使用模式等。后者涵盖的范围相对较广,具体指的是服务的交付以及使用模式,通过互联网的形式以按需、易扩展等方法获取各类人们需要的服务。这种服务涉及的范围很广,既包括与网络应用有关的服务,也可以是其他服务。
(二)云计算测试什么
它表示的是以云计算技术为基础而形成的一种全新的软件测试方式。通常情况下服务商会为客户提供多样化的平台,普通的客户只需将自动化测试脚本按一定的程序和标准编写好,并发送给服务商的相关工作人员进行审查,之后便可以在服务商提供的网络平台上运行自己已经编写好的脚本。
(三)云计算为云测试提供多种技术支持
云计算一般来说会为云测试提供多种技术支持,常用的主要有以下几种:
1、虚拟化技术:这种技术的种类很多,使用频率较高的主要有KLVM、Xen、VMware Sphere等3种类型。它能够实现各种资源的逻辑抽象以及统一表示,除此之外,它还能通过内部转化把电脑资源分成多種操作环境,亦或是将各种环境整合为一个拥有强大功能的操作环境,并且为上层系统提供一个十分完整的基础架构。
2、分布式存储:这种系统使用的结构实际上是能够扩展的,它主要是通过多个服务器来分别承担存储的负荷。分布式存储的优点很多,既具有安全可靠、效率高的特性,同时还更有利于系统的快速扩展。
3、海量数据管理:当前,很多企业的规模不断增大,随着规模的扩大,数据处理的难度也逐渐增加,因此,效率较高的海量数据管理技术对于企业来说是必不可少的。现阶段,云计算系统中相对来说比较成熟的数据管理技术有两种,一是谷歌公司开发的BigTable分布式数据库,二是HBase开源数据管理。
4、云平台管理:云计算的功能十分强大,它的内部存储着大规模的数据库,因此,需要大量的服务器对这些数据进行管理,可是复杂的是这些服务器并不是集中在一个地方,而是分散于多地,并且这些服务器上时时刻刻都有上百种不同类型的程序在运行。怎样才能确保整个系统不中断且管理好系统是一个非常大的挑战。只有落实和解决好云平台可能出现的一切管理问题,才能真正从根本上确保云测试的正常运行。
其一,云测试服务流程。一般来说,云测试服务的具体流程如下:平台会统一提供一个页面用于接收客户的测试请求,接到请求信息后对这些信息进行处理,并且为其提供虚拟机进行测试调用,之后便能够顺利的在云端开展测试活动,完成测试后系统会自动生成报表并将其返还给客户。
第二,云测试的具体特征。和传统的测试相比,云测试具有很多鲜明的特征。通常情况下,云测试包含案例的设计、问题的上传、具体计划的操作、报告结果的生成和后续的维护管理工作等几个环节。
(一)云测试的发展现状
根据深入的调研得知,当前云测试运用的范围主要是涉及以下几个:
1、云测试平台:主要是根据用户的具体需求提供令用户满意的测试环境,由服务商安排测试工作人员为客户具体执行测试内容,该过程实际上是节省了用户的开支,用户不用再自行设计测试环境,只需要按使用程度向服务商付费即可。
2、测试工具:专业的云测试平台往往具备各种各样测试所需的工具,用户只需将设计好的测试项目提供给服务商,服务商会根据项目为其分配合适的测试工具,并且在完成测试后快速的反馈结果,这样一来,用户就不需要在工具方面进行不必要的投资,只需要向服务商支付工具使用费即可。
3、测试软件:云测试的功能是十分强大的,支持绝大多数软件的测试,即使是自动化的功能和性能测试也能够完成。
(二)云测试存在的问题
1、没有具体统一的标准和规范。由于缺乏规范的管理,当前市场上各个云测试服务商都根据本公司平台的实际情况制定了一套适合本公司的标准和规范,这就使得云测试的标准比较混乱,无法得到统一,从而导致各个服务商提供的测试结果可能会有所不同。除此之外,因为各个公司间缺乏交流和沟通,因此很多测试方式和手段无法通用,很大一部分测试方法实际上无法应用于所有的软件测试。
2、安全性有待进一步增强。对于云测试而言,安全性是绝对不能忽视的问题,服务商必须确保各类测试数据的存储是百分之百安全的。除此之外,服务商还应当考虑到各类突发问题,并提前制定好应对策略。例如:当云系统出现故障时,服务商怎样对测试数据进行保存、备份和修复,以确保客户的利益不受损害。
云计算实际上是属于一种比较强大的计算方式,在操作过程中不能一味参照以往传统的测试方法,要根据云平台的实际情况,有针对性地制定出可行的测试方式。
(一)制定统一的云测试标准
当前,随着云测试的快速发展,制定一套统一的行业标准是十分有必要的,政府必须从监管的层面出发,建立一个统一的行业监控机制,通过强制手段,促进云测试行业的规范发展。标准中可以包含以下几个方面的内容:安全检测评估标准、测试可信性的具体评估模型、测试是否体现了公平公正的原则。
(二)进一步提升测试工作者的综合素质
云平台的操作实际上并不简单,它是一个庞大而复杂的系统,因此,这需要测试工作者既要精通云计算的相关知识,同时也要能够熟练的开展测试工作。所以,服务商应当不定期的为测试工作人员提供相关的培训,保证测试工作能够更好地进行。
(三)云计算的性能
对于云计算而言,性能测试是必不可少的一个重要环节,只有进行了科学严谨的性能测试,才可以确保云测试工作能够正常开展。通常情况下,我们可以提前设定一些场景和案例进行测试。测试方法之一就是可以刻意地将一些数据暴露到公共平台上,通过这样的方式查出可能会出现的各种问题。
(四)要坚持测评结合的原则
在开展安全测试时,要始终坚持评估和测试相结合的原则。首先可以通过云计算获得一个切实可行的安全模型,并在此基础上对整个系统的安全性进行细致的评估,同时参考其他有价值的测试结果,最终获得一个科学合理的安全性评价结果。
目前,云计算的发展速度是十分惊人的,云测试极有可能在不久的将来就得到大规模的普及。但需要注意的是,云计算出现的时间相对来说还比较短,至今还有很多业内人士对其提出种种质疑。所以,在今后的研究过程中,我们还需要对其进行更深入的开发,并且根据实际情况制定一系列切实可行的技术和服务标准,确保云计算能够最大限度地发挥其效用,让越来越多的企业受益,从而进一步推动云计算的快速发展。
作者单位:南京莱斯信息技术股份有限公司