荀江萍
摘 要:随着云计算的普及,IT行业也迎来了一个新的时代。而在软件测试方面,也诞生了一种全新的基于云计算平台的软件测试方法。本文主要介绍一下在云计算环境下,软件测试的相关发展情况,旨在让人们更加了解云计算软件测试。
关键词:云计算;软件测试;测试策略
1 云计算软件测试相关知识
1.1 云计算软件测试的概念
从广义来说,云计算就是一种服务的交付和使用模式,是通过网络以按需、易扩展的方式获得所需的服务。而云计算软件测试是由云计算和测试两方面组成,它是一种基于云计算的新型测试方案,它有自己的测试方法、过程、手段,与传统测试相比,有较大的差异。
1.2 云计算软件测试的特点
⑴前期准备工作。传统软件测试需要购买各种测试基础设施,如服务器硬件、网络设备、系统软件和测试软件等等;对进行测试的人员需要投入较多的时间和资源进行专业技能培训,一般都是一次性消费,而且在初期的投入都比较大。而云计算软件测试则是通过云计算平台提供测试基础设施服务,用户无需自行购买,且在购买时是按需购买,可以根据测试项目的规模、测试目标、测试时间等分步付费;对于测试人员,一般由云计算服务提供商配置专业的测试人员,如果需要特殊领域的专业知识的测试还可用众包等方式实现。
⑵测试环境部署。云计算软件测试可以通过云计算平台自动分配和部署测试环境,动态智能分配测试环境,方便快捷。
⑶测试过程以及测试代码和数据管理。云计算软件测试是集中管理模式,采用完整的项目过程管理,并保证各个软件的质量。在软件代码与数据管理方面,传统软件测试是由软件开发商内部管理,独用企业内部各项基础设施,安全机制比较一般;而云计算软件测试是共享的公共云平台,由软件开发商、云服务提供商等多方参与,安全机制比价复杂。
⑷商业扩展。云计算软件测试用到的资源都存储在云计算平台中,查找方便,可扩展性比较强。
2 云计算软件测试的研究范围和分类
2.1 云计算软件测试的研究范围
云计算软件测试的研究范围主要分为三个方面:第一个方面,云计算平台自身的测试,也就是对构建云计算基础设施服务能力的测试,这方面主要体现在对云平台IaaS层的测试研究。第二个方面主要是研究软件开发商利用云计算平台提供的相关资源进行各种测试活动。这个方面主要是对云测试技术、云平台自动测试工具和测试项目管理技术等方面难题。第三个方面主要是对TaaS相关问题的研究。TaaS是软件测试行业新兴的一种服务模式,其主要是支持面向需求的软件测试服务市场可以按需获得软件测试的服务。它也是现行云计算软件测试中最大的难题,它涉及到云计算、软件测试、服务外包等多个领域,是一门综合的且比较复杂的学科。
2.2 云计算软件测试的分类
⑴按测试任务可分为:压力测试、负载测试、性能测试、功能测试、兼容性测试、浏览器性能测试、延迟测试和安全测试。
⑵按测试用户角色可分为:①云中测试:这部分主要是云供应商进行测试,主要是对云中SaaS功能和一些保证云正常运行功能的质量测试。②云外测试:这部分主要是从外部对云计算指定的功能和服务就行质量测试,这个测试涉及云供应商,SaaS供应商和最终用户。③云上测试:这类测试主要针对云的应用系统供应商,其是通过云平台测试部署在云端的服务应用。
3 云计算平台的测试策略
云计算平台是由上万台计算机组成的,所以在使用云计算测试方法策略方面,要区分于传统系统的测试方法,要根据云平台的特点,合理的定制测试策略。一般在云计算平台下进行软件测试需要注意以下几个方面。
3.1 测试人员的基本素质
云计算平台是一个庞大的系统,测试人员必须同时具备了解云计算平台和相关业务知识的双重保证。这就要求测试人员不仅要了解云平台的运行机制,而且还需要掌握在云平台运行的相关业务流程,否则就无法很好的完成整个测试流程。
3.2 减少测试对生产环境带来的风险
云计算平台毕竟是一个测试系统,它的组成庞大而又复杂,所以我们没能力也不可能专门复制一个系统用于测试,所以只能利用现有的工作环境进行测试,在工作环境下进行测试相对而言就会产生一些风险。这就要求测试人员在保证测试的准确性下,应该把这种风险降低到最低,具体可以通过建立恢复机制,选择休息日、避开工作量大的时候登手段来实现。
3.3 云计算平台的性能
云计算的性能测试是一个需要特别关注的方面,它是验证云计算在各种负载情况下的服务性能。并且通过不同的测试场景和测试用例,来模拟云计算的极限测试和压力测试。另外一个需要注意的就是运行效率方面,由于云计算平台服务器会根据用户的需要不断进行整合和分割,这些都会消耗云计算平台的运行效率。所以在系统进行部署时,虚拟机的效率和性能也会相对的收到影响,这就要要求测试人员能设计出合适的测试场景和脚本,以供测试顺利有效的进行。
3.4 适当进行评估,评测相结合
在进行云计算安全性测试时,要本着系统评估和测试相结合的原则。通过云计算模型得到云计算的安全模型,在此模型下对云计算系统的安全可靠性进行评估。然后再通过测试数据等相关数据,结合其他的测试结果,得出对云计算系统安全可靠性的评价。
[参考文献]
[1]Sun Microsystems.云计算架构介绍白皮书.2009.06.
[2]李乔,郑啸.云计算研究现状综述[J].计算机科学,2011,38(4):32-37.