您的位置:软件测试 >> 测试技术 >> 测试精品文章
提高云计算中的软件质量
作者:Gavlin Pather(泽众软件原创翻译) 发布时间:[ 2014/5/8 14:26:32 ] 推荐标签:云计算 QA 自动化测试

Gavlin Pather在俄罗斯的KZN长大,在那里他学习信息技术并开始了作为一名开发者的职业生涯,后来他又成了测试领域的一名黑盒测试员,接着又转向白盒测试,终是自动化测试。在测试专业领域近6年并在测试实验室中进行测试,自然而然地,他逐渐开始对云产生兴趣。

 

  计算机和软件在我们的日常生活中越来越常见。现代社会中随着我们对技术越来越依赖,不可避免地需求它们变得更快,更好。更快,更好的需求提高了,需要更高质量的软件。要做到这一点,不能只依靠手工测试,我们需要进入一个自动化的测试时代。
  通过结合自动测试和手动测试,我们能够在较短时间内达成一套质量标准。然而,随着我们迈向一个更加技术化的(要求我们开发的软件不仅在我们的个人电脑上,且在移动设备上也能运作的)现代社会,需要更多的云计算。拥有了更先进的软件,硬件和托管平台人们需要有更加复杂和精密的测试方法以保持传统软件测试中达到的质量标准。
  云计算改变了我们提供及管理计算资源(如CPUs ,数据库和客户存储系统)的方式。
  我们测试在云上运行的软件的方式可以更好地表现出该软件将如何在现实世界中运作。正如Jerry Gao等人所说,“云计算是互联网发展的下一阶段。一个典型的云必须有几个不同的属性:弹性和可扩展性,多租户,自我管理功能,服务收费和计量功能以及连接接口和技术”。此外,云支持大规模用户在各地从互联网进入。它为客户随时提供按需应用服务,并提供虚拟和/或物理设备。因此,云中的软件测试可能会更复杂,花费比预期更长的时间,这造成手动测试一支独大。
  在云计算中加入自动化测试让你能够在多个平台上运行回归测试脚本,这扩大了正在进行的测试的范围并消除了可能造成误差的人为因素,同时也减少了完成回归测试所需要的时间。由于各种软件复杂性、云的浩瀚广阔及(可能在测试过程中被发现并导致两种测试方法结合的)缺陷,手工测试不能完全消失。此外,开发人员使用单元测试可以确保一个软件上的改变对系统的影响小,还能在部署之前检测出缺陷。
  通过结合这些方法并把它们应用到云计算中(同时也要考虑云的复杂性,自动化测试的灵活性,及解决手工测试问题的能力),我们要在较短时间内在不断变化、适应和发展的软件工程和开发业完成更高质量的软件。
 

  云计算
  云计算是一个为可配置计算共享池(共享池可以被快速配置且其发布只需极少的管理或服务提供商交互)提供普遍,便捷及按需网络访问的模型。用户可在任何地方按需获取,并不是只能从本地电脑获取。运行他们自己的基础设施的公司(如亚马逊,谷歌和Facebook )使用该模型能时刻应对正在运行的系统及按需缩放的系统上的变化及升级了。用户或客户可用浏览器内的基于云的计算机资源提供的一项服务及执行所要求的功能和/或输出的一项服务去执行一个任务,如准备一份库存报告或执行文字处理。Jerry等人2011观察到的传统软件测试与云测试之间要注意的些微区别见表1。注意这些差异非常重要,因为这能帮助更好地理解这两个测试平台之间的差异,以及这些差异会怎样影响测试软件可能采取的方法。任何功能的云测试,如集成测试,都包含了确定一组预定义策略来设计测试用例以覆盖大范围的用户期待需求。

  云测试
  因为云测试相对而言还比较新,我们无法明确应在云系统测试实践中应用什么软件测试技术,建议,方法和工具。因此,我们对云测试还没有一个明确且被普遍接受的理解。传统的软件测试方法主要是根据测试者和标准的佳实践而不是理论。它是由Kitchenham等人在他们的(其中既没有关于软件工程师如何找到缺陷和/或将之引入软件系统的已知理论,也没有任何提供关于测试人员如何识别这些缺陷或bugs的理论的)研究工作中提出的。在任一现存云服务测试中,终用户的参与都更积极,更直接。这些终用户可以是个人或企业用户,他们已成为云应用和云服务提供商的云测试团队的强大和不可缺少的一部分。由于非基于云的应用程序的硬件和软件的限制,大多数软件应用程序需要存在于主机或小型机上。评估被测软件时主要考虑三个方面,即:单元测试,自动化测试和手工测试。

表1.传统软件测试与云测试间的差异

上一页12下一页
软件测试工具 | 联系我们 | 投诉建议 | 诚聘英才 | 申请使用列表 | 网站地图
沪ICP备07036474 2003-2017 版权所有 上海泽众软件科技有限公司 Shanghai ZeZhong Software Co.,Ltd