文档章节

云测试中QA团队的作用

软件测试
 软件测试
发布于 2015/01/20 15:34
字数 3176
阅读 16
收藏 0

  公司转向云部署模式或使用云测试服务来测试一个app时有不少好处。本文将介绍高水平的云概念并讨论云测试中质量工程师的作用。

  我们来看看云测试时需要考虑哪些吧。

  什么是云计算?

  根据一份Gartner报告,云计算是“一套规则,技术和用于提供IT功能(软件,平台和基础设施)并将之作为一项按需扩展弹性服务的商业模式”

  云计算的五大特征

  --它使用动态的,共享的和虚拟的基础设施

  --它是弹性的,可扩展的(根据负载增加和减少)

  --它根据消费定价

  --它可以用在各种常用网络上

  云部署模式

  基于部署模式,有公共云,私有云,混合云和社区云。

  为云用户提供的云服务模式

  高水平的有三种模式:SaaS, PaaS, and IaaS。但是这些已经被最近开发的更多服务模式扩充了。主要云服务模式有:

  --软件即服务(SaaS)– 例: QuickBooks Online accounting software on the cloud, Yahoo mail, Gmail

  --平台即服务(PaaS)– 例: Google AppEngine, Amazon Beanstalk, Saleforces Heroku, Cloud Foundry (开源PaaS)

  --基础设施即服务(IaaS)– 例: Amazon Elastic Compute Cloud service(s), S3, Windows Azure Storage

  --数据库即服务(DBaaS)– 例: Oracle Cloud database service, Amazon Relational Database Service – MySQL, Microsoft SQL Azure, Amazon DynamoDB, MongoDB database as a service

  --分布式计算即服务(big data)– 例: Hortonworks, Cloudera, MapR, AWS

  --测试即服务(TaaS)– 例: Soasta, HP, Keynote, Perfectomobile, Gomez

  --内存内缓存服务– 例: Amazon Elasticache

  --后端即服务– 例: Parse, Stackmob, Cocoafish

  --集成平台即服务– 例: Mule Software

  云计算和云测试的好处有?

  A)云计算

  --业务敏捷性和快速上市时间模式云计算提供即消应用云的资源如IT基础设施,软件平台和商业应用.

  --优化IT成本——云可以减少你的部分IT运营成本。

  --现收现付模式——云计算的一个重要特征就是它的按需功能。计算,存储功能或app资源只在需要时用,且你只需支付你使用的。 

  --资产高回报——云计算通过卸载数据中心帮助减少IT成本,IT运营人员和相关成本。

  --创新推动者——云提供一种方法来创建更多业务和IT组织内部的创新。

  --业务试验推动者——云为业务试验和减少风险提供一个平台

  B)云测试

  让我们将测试分为高水平的两类:

  1.测试云中的app

  2.使用云测试服务测试app

  测试云app

  使用之前提到的一种部署模式将App部署在云中。测试员测试功能、集成、端到端、负载、压力、和安全等测试的各个方面。

  例子:小业务要用的QuickBooks Online (SaaS) cloud accounting software, Gmail, and Yahoo Mail

  Web appapp用户界面是通过浏览器和web服务(SOAP, RESTful)并使用客户端工具(如Chrome Postman, SOAPUI)或使用基于java的单元测试框架来测试的。

  移动appapp下到智能机上,并用真实设备和/或模拟器测试。

  例如:iPhone QuickBooks OnlineAndroid QuickBooks Online,和iPhone/Android Yahoo Mail.

  使用云测试服务

  他们交互式地自动地为测试web移动app提供基于云的测试平台。云测试服务供应商需要维护测试基础设施,提供持续集成工具和自动化工具。这种服务模式也称为测试即服务(TaaS).有时,term这个术语也可以指外包测试模型。但是本文的重点是云测试服务模式而不是外包模式。

  例如:Soasta, HP, Keynote, Perfectomobile, Gomez

  云测试的优点

  一些优点和之前提到的云计算的优点一样。以下是一些不一样的优点:

  --复杂性和资源:app在增加在改变,先在还多维。例如,一个webapp需在不同的操作系统上用不同的浏览器测试。如果是一个移动app,那么就需要在不同的移动设备,移动网络并按照如3G, 4G, Wi-FiWi-Max的标准来测试。创建很复杂的测试实例需要资金和资源。云为测试提供所需基础设施和工具。

  --成本效益:组织不需要投入时间,资源和资金来维护测试实例。我们只需要为在云中的使用付费。如果你在进行负载测试,你就不需要等测试实例准备好了。工具许可证和维护费用被取消了。

  --更快的交付周期:因为测试员基于其要求的配置快速地得到测试实例,一个云测试服务可以被集成到我们的持续集成系统中,所以它积极影响了上市时间。这也支持使用多台虚拟机器的测试平行执行。

  --稳定的测试实例:如果没有服务(储存空间用完,资金用完,服务器宕机,等),测试工程师通常会记录事件。因为云测试服务是SLA驱动的,多数时间测试实例在增长和运行。

  --按需自动化服务:测试实例是从大范围的虚拟环境以自助服务的方式来按需提供的。测试可以手动也可以自动进行。

  --多地执行测试:对于负载测试,可以通过选择实例,服务器和服务器位置来按需形成负载。

  QA团队的职责

  1.云就绪

  --你的app准备好要在云中测试吗?如果没有,建议QA团队花时间考虑安全和防火墙等问题以便让云就绪。

  --确保测试,测试框架和工具准备好使用任何一个云测试服务供应商而非锁定一个供应商/工具来进行测试。

  2.云测试的策略和发展蓝图

  如果你的组织计划使用云部署模式,那你就需要确保测试的可测试性和各种类型包含在发展蓝图内。

  --了解云供应商提供的云部署模式,模式和技术。

  --想出一个云测试策略。这也应该覆盖将被执行的测试,手动或自动化测试,以及测试执行的持续时间。

  --列出你的app平台/技术的组件和它的版本,比如app服务器web服务器,函数库,数据库和操作系统。

  --与你的团队和主题专家重新评估策略。

  3.列出相关服务/系统

  比如,如果你的app被集成到内部/外部相关服务中,那么当你的app部署到云上或用云测试服务测试时确保相关的组件工作。

  --如果你的app被部署到云中,确保云部署服务提供商和测试服务提供商能够彼此交流一下。

  --如果你的app被部署到你那儿,要确保你的云测试服务提供商可以接触到app和集成组件。

  4. 确定测试(手动和自动化的)

  确定将在云测试环境中执行的手动和自动化测试。因为测试服务成本是基于使用,花时间计划测试执行很有效。

 

1. 选择云测试服务提供商的准则

  5.为在云中测试移动/webapp选择正确的供应商。在选择供应商前,彻底了解你公司的具体需求以及服务提供商提供了什么。使用他们的免费试用机会去了解。有效地花时间和金钱在此任务上很好。

  6.安全:QA团队应该带上白帽子。维基百科上说术语“白帽子”在网络俚语中指一个有道德的电脑黑客,或是一个电脑安全专家,精通渗透测试以及其他测试方法,确保组织信息系统的安全。了解资产的安全责任,比如物理安全,网络基础设施,虚拟机器,传输中的数据,静止数据,操作系统,凭证,策略和配置。一直要在你的手动/自动化云测试中使用非敏感合成数据。云安全联盟(CSA是一个非盈利组织,它的使命是促进最佳实践的使用以在云计算中提供安全保障。云安全联盟是由行业从业者,企业,协会以及其他关键利益相关者组成的大联盟。根据CSA 2013报告,以下是前九大威胁:

  a. 数据泄露

  b.数据丢失

  c.账户劫持

  d.不安全的应用程序接口

  e.拒接服务

  f.恶意的内部员工

  g.滥用云服务

  h.不够关心

  i.共享技术问题

  7.规定遵守

  我们应该要知道云供应商规定的用以维护安全并保护数据的限制。遵守责任基本大家都知道——云供应商提供基础设施的保障,且你的公司负责在基础设施之上的app的遵守。我们需要了解如Sarbanes-Oxley, ISO 2001, ITIL, SAE 116, SAS Type I and II, HIPAA, PCI,等由云供应商基于你们公司具体要求而规定的标准。我们可以基于我们的业务需求要求审计员制作的报告和证明。政府组织有特殊的监管需求。比如,亚马逊网络服务(AWSGovCloud(美国)是用来解决美国政府机构,教育机构,其他用户和合作伙伴的特定监管需求的。

  8. 了解服务水平协议

  了解云服务提供商的服务水平协议很重要。它指出了服务不满足服务承诺时的正常运行时间,以及申请信贷请求的规定。

  9.成本使用

  确保云服务被正确使用,因为会按你的使用收费。同时,确保服务能被充分利用。大多数云供应商提供资源使用报告。验证报告以确保你为你已经使用的服务付费。

  10.了解云供应商的位置和可用性区域

  云供应商的位置对于网络延迟和性能测试很重要。比如,世界各地都有亚马逊的弹性计算云(EC2)。这些地方包括域和可用区。每个域都是一个独立的地理区域,都拥有多个独立的可用区。

  11.移动云计算的未来

  除了成功的业务云如电子商务网站,还有更多云可以解决全球贫困,农业问题和健康问题。我们看到医生使用社交媒体来和其他医生联系以获得建议和第二意见。移动和云计算都在不断发展,移动云计算同样也如此。这样就导致了更多该领域的标准。

  移动手机的使用增加了。IEEE将移动云列为2014的尖端技术趋势之一。IEEE说到:“移动和云计算在融合,创造一个新平台——它有可能提供无限的计算资源。移动设备被其内存,处理能力及电池寿命所限制。但是结合云计算,数据进程和存储可能会在移动设备外发生。IDC宣称“第三平台”能更好地同步数据,提高可靠性和可扩展性,使集成以及随时随地使用商业应用程序和协作服务更容易,增加用户体验和对新服务的探索。

  举例:一个移动应用程序监控设备的位置。该移动设备不断基于设备的移动将其位置信息发送给云上的数据库。一个汽车传感器即时将数据发送到云。分析数据,发送的结果可以提高燃料效率。

  作为适量保证工程师,我们需要学会它并享受云测试带来的好处。

版权声明:本文出自 SPASVO泽众软件测试网:http://www.spasvo.com/news/html/201514151919.html

原创作品,转载时请务必以超链接形式标明本文原始出处、作者信息和本声明,否则将追究法律责任。

本文转载自:http://www.spasvo.com/news/html/201514151919.html

软件测试
粉丝 0
博文 1
码字总数 0
作品 0
普陀
私信 提问
SDET Unicorns - 为什么如此难以雇用SDET?

SDET,也称为测试中的软件开发工程师,是软件测试和质量保证领域的工作角色。该术语最初由微软和谷歌使用,旨在用自动化取代普通和重复的手动测试任务。 多年来,越来越多的公司正在招聘SDE...

程序猿拿Q
2018/11/22
102
0
Web开发人员为什么越来越懒了?

在中国的互联网行业,基本上现在的大小公司都有这样一个部门,QA。也没有人论证过为什么要专门出来这样一批队伍,反正大家都这样做了,这样做也不会错到哪里去。 测试工程师释义 某百科有云:...

罪恶的花生
2014/06/06
132
3
敏捷软件测试常见的七个误区

敏捷软件开发是从1990年代开始逐渐引起广泛关注的一种新型软件开发方法,是能够应对快速变化的需求的一种软件开发能力,它作为一种新型的开发模式,被越来越多地应用到软件项目中。 敏捷软件...

oschina
2016/05/22
4.2K
1
敏捷软件测试常见的七个误区

本文作者:伯乐在线 -ThoughtWorks 。未经作者许可,禁止转载! 欢迎加入伯乐在线专栏作者。 敏捷软件开发是从1990年代开始逐渐引起广泛关注的一种新型软件开发方法,是能够应对快速变化的需...

伯乐在线
2016/05/18
0
0
测试自动化后,我们需要怎样的QA?

本文作者:伯乐在线 -ThoughtWorks 。未经作者许可,禁止转载! 欢迎加入伯乐在线专栏作者。 我们先讨论一下在传统的瀑布模型下QA是如何工作的,其中最主要的问题是什么;然后作为对比,我们...

伯乐在线
2016/12/19
0
0

没有更多内容

加载失败,请刷新页面

加载更多

JS其他类型值转化为Boolean类型规则

本文转载于:专业的前端网站➤JS其他类型值转化为Boolean类型规则 由于最近在笔试的时候,发现好多关于其他类型转化为Boolean类型的题目,因此总结一下! 一、String类型转化为Boolean 1.转化...

前端老手
16分钟前
2
0
EurekaClient自动装配及启动流程解析

在上篇文章中,我们简单介绍了EurekaServer自动装配及启动流程解析,本篇文章则继续研究EurekaClient的相关代码 老规矩,先看spring.factories文件,其中引入了一个配置类EurekaDiscoveryClie...

Java学习录
22分钟前
3
0
析构函数是否必须为虚函数?为何?

在C++中,基类指针可以指向一个派生类的对象。如果基类的析构函数不是虚函数,当需要delete这个指向派生类的基类指针时,就只会调用基类的析构函数,而派生类的析构函数无法被调用。容易造成...

天王盖地虎626
23分钟前
2
0
【TencentOS tiny】深度源码分析(7)——事件

引言 大家在裸机编程中很可能经常用到flag这种变量,用来标志一下某个事件的发生,然后在循环中判断这些标志是否发生,如果是等待多个事件的话,还可能会if((xxx_flag)&&(xxx_flag))这样子做...

杰杰1号
26分钟前
2
0
聊聊nacos client的ServerHttpAgent

序 本文主要研究一下nacos client的ServerHttpAgent HttpAgent nacos-1.1.3/client/src/main/java/com/alibaba/nacos/client/config/http/HttpAgent.java public interface HttpAgent { ......

go4it
32分钟前
2
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部