云测试系统
2018-05-08周玲妤
周玲妤
摘要 随着互联网+战略的实施,越来越多的企业开始结合互联网来开发新的商业模式。在这样的潮流趋势下,与其密不可分的一部分就有软件测试。如何有效的检测出软件中所存在的错误和缺陷,使用何种方法才能更好的在提高软件的容错率的同时降低成本,增加软件的友好度是软件开从业人员高度关注的一个问题。
【关键词】软件测试 云计算 云测试
1 引言
软件测试是一个用来鉴定软件的质量的一个过程,其目的是发现软件中可能存在的错误。传统的软件测试一般是在本地对软件进行测试,与云测试中将各个测试用例分布到不同硬件进行并行测试上相比,传统软件测试每次只能在一个硬件上对测试用例串行的进行测试,且在此过程中产生的各类成本严重限制了测试技术的发展。结合云计算的分布式特点及优势,云测试可以合理动态调用各类资源,通过一个共享可用的自动化测试环境交付平台给用户提供高效的便捷服务。而用户只需要登录到该测试环境即可使用该服务。
2 传统软件测试
传统的软件测试方法主要是通过在本地对软件进行测试来发现软件中所可能存在的问题,其分类可分为静态测试和动态测试两种。静态测试主要是对软件源代码和软件产品需求和设计规格说明书进行研读审查来实现对软件的测试,该种方法在查错和功能分析上很有优势。而动态测试主要是通过实际运行程序来发现其中的問题,可分为白盒测试和黑盒测试。
3 云测试
云测试是基于云计算的一种新型测试方案,这种测试方案可以给用户带来高效率、低成本的专业服务。云测试使用门槛低,提供按需服务并有针对性的收费的方式,用户通过互联网及时获取到所需的测试资源,实现快速测试。不仅节约了本地资源开销,同时还节约了维护和审批的成本。除此之外,用户可以在任意时刻、在不同的环境中进行测试,而且可以快速的拿到有效的测试报告并将其投入使用。
4 云测试的体系结构
云测试作为一种基于云计算的测试方案,其特征是拥有一个基于云的共享构架平台,测试程序可以在任意终端上执行,用户可以通过该平台获取软件测试所需的资源从而完成测试工作。在云测试提出后不久,Yu等人就已经有人提出了关于云测试的基础架构_——Taa S五层架构。随后也有一些其他学者设计出了不同的云测试体系结构,本文主要介绍肖明清等人[2]的设计方案。
在这种设计方案中,云测试的体系结构可以分为三层:硬件层、云测试服务层、用户层。用户层即客户端,用户通过客户端选择所需服务并执行测试项目。云测试服务层是测试的核心部分,用于实现相关的测试算法,其功能主要包括测试资源的控制及管理、测试程序的调度与执行和测试程序的编辑与开发等。无论是测试数据库的访问还是进行资源的管理控制都是在该平台下进行的。硬件则为实现云测试提供相应的基础设施。这些基础设施的使用是通过利用云平台构建其虚拟测试资源池来实现的。
5 云测试与传统软件测试的区别
传统的软件测试重点关注测试的过程,以求能尽可能深入的了解测试项目的真实情况。因此,在这种设计模式下,测试人员必须要设计出多种组合的测试用例,尽可能的考虑到所有情况并对这些测试用例逐一进行测试,才能得出较优的测试结果。但是随着移动互联网的发展,现如今的软件的更新换代速度非常快,人工的去逐个进行用例测试是一件很耗时的事情。除此之外,使用传统的软件测试所需要的环境的搭建和维护的成本很高,测试资源弹性也很弱。
而云测试与传统软件测试不同,它更注重对全局的关注。它能够提供自动化的测试,并利用云计算分布式的特点将所有的测试用例分散到不同的硬件设备上,并行的完成测试,这样就大大的缩短了测试所需的时间。不过因其对软件的测试是在云上完成的,因此,与传统软件测试相比,在云上进行测试还要关注一些额外的东西,例如线上监控和热修复等。不过尽管云测试在安全性能上不如传统的软件测试,但其在成本节约、可靠性、实时性和容错性能上都比传统的软件测试要强。表l展示了云测试与传统软件测试的区别。
6 总结与展望
随着互联网+战略的部署与实现进程的推进,网络软件的频繁迭代,传统软件测试方法的不足将会愈加明显,云测试将会因其能够弥补传统软件测试方法的不足而拥有广阔的应用前景。不过究竟是使用云测试还是使用传统的软件测试还是要根据测试软件自身的特性来选择,而云测试领域也还有很多问题亟待解决。
参考文献
[1]杨本生,袁祥梦,黄晓光,基于云计算的软件测试系统框架研究[J].计算机测量与控制,2014,22 (06):168 3-1686.
[2]肖明清,杨召,赵鑫,云测试的概念及应用探索[J].计算机测量与控制,2016,24 (01).
[3]陈潇潇,云测试系统研究综述[J].科学咨询(科技·管理),2015 (09):34-37,133.