归纳以上几点可知,云测试的大优势在于立即可用、装配完备和专家服务。

  ● 立即可用。云测试提供一整套测试环境,测试人员利用虚拟桌面等手段登录到该测试环境,可以立即展开测试。这将软硬件安装、环境配置、环境维护的代价转移给云测试提供者(公共云的经营者或私有云的维护团队)。以现在的虚拟化技术,在测试人员指定硬件配置、软件栈(操作系统、中间件、工具软件)、网络拓扑后,创建一套新的测试环境只要数2~4个小时。如果测试人员可以接受已创建好的标准测试环境,那么他可以立即登录。

  ● 装配完备。云测试不但可以提供完整的测试环境,还可以提供许多附加服务。对于测试机,它可以提供还原点,以便测试人员将虚拟机重置到指定状态。对于测试执行,它可以监控被测试程序程序的一举一动,例如注册表访问、硬盘文件读写、网络访问、系统日志写入、系统资源占用率、内存映像序列化、屏幕录像等。将这些信息与测试用例一起展现出来,可以帮助测试人员发现问题,定位错误。对于大规模的测试,云测试可以提供多台测试客户机,他们从主控机上下载测试用例,执行并汇报测试结果,主控机将结果汇总后报告给测试人员。实际上,这些功能已经被各种工具所实现,云测试平台的任务是整合它们,提供统一、完备的功能。这样,测试人员可以将精力大限度地投入到专属的测试领域中,而不是与各种工具搏斗。

  ● 专家服务。高级的测试服务是提供专业知识的服务。这些知识可以通过测试用例、测试数据、自动测试服务等形式提供。例如,许多应用需要读取文件,云测试可以提供针对文件读取的模糊测试。测试人员将被测试的应用程序提交给云,云将其部署到多台测试机上。在每一台测试上,应用程序要读取海量的文件,每一个文件都是特意构造的攻击文件。一旦栈溢出、堆溢出等问题被发现,立即保存应用程序的内存映像。一段时间后,测试人员将获得云测试返回的测试结果:一份详细的分析报告和一大堆内存映像文件。

  以当前的技术发展水平,云测试会在以下两个方面率先展开。

  ● 提供测试环境。云测试提供彼此独立的测试环境,测试人员登录之后,运行自己的测试用例。这种服务对平台的要求较低,相关技术也已经成熟。

  ● 提供测试运行服务。测试人员编写好测试之后,将其提交给云测试平台,云测试平运行测试并返回测试结果。例如,测试人员编写了一组Load Runner测试,他将该组测试与测试用例执行概率、虚拟用户数、网络连接配置等性能测试参数提交给云测试平台。云测试平台将测试部署到多台测试代理(Test Agent)上执行,后生成性能测试报告。此类服务仍旧基于现有的成熟技术,虽然要集成多种工具,但实现难度不大。

  目前,云测试还处于起步阶段,相比廉价硬件+虚拟化的本地测试环境还没有明显的优势。随着云计算服务的发展,云测试也会快速演进。Google Chrome OS提供Web API将绝大多数应用置于云端,那么将一部分测试用例部署在云上也是自然的选择。