什么是云测试?
在云中测试app运行与在非云环境中测试app运行没什么不同,但却需要我们融合常规项目所要用到的各种测试技术。云测试解决方案需要重点关注的方面应该是配置、集成、业务、安全/可达性和性能,因为app要被很多用户使用。可根据业务的复杂程度使用合适的测试方法。用客户的上&下游应用来无缝集成云解决方案对于产品的市场成功很重要,这是为什么安全测试这么重要的原因。
在云中测试——为何?
A. 低成本:
低门槛、零架构且定制费用低的云提供划算的基于网络的服务,。
B. 低维护费用:
顾客不负责app或服务器的维护,因为这归云供应商负责。
C. 平均修复时间(MTTR):
它只是一个月定、季定或年定的按需服务。可以在特定期限内快速访问服务,因此你并不需要购买软件/硬件且不需要设置。
D. 灵活的规定:
云计算中,这些规定很灵活,因为它们是基于业务的,但在传统模式中它们却是固定的。
云中测试与传统测试有何不同?
▪▪完整的实用新型平台、测试专家和工具
▪▪共享的多租户测试环境
▪▪安全(测试用户IDs/SSO)
▪▪on/off终端系统的集成
▪▪可以使用各种工具,以保证覆盖更多测试
▪▪性能/容量测试
▪▪缺陷隔离
▪▪ “离盒”需求的记录
▪▪发布管理
云计算架构
如图1.3所示,用户可以按需使用托管在云环境中的app。
采用云的驱动因素:
▪▪SaaS(软件为服务)模式,导致TaaS
▪▪SI(系统集成商)对于战略性和战术性支持他们使用云非常重要。
▪▪明确适合迁移到云中的部分(基础设施、平台、app、工具和业务流程层面)
▪▪POC——验证概念是一个很好的主动连接用户云的战略性方法。
▪▪任一云服务重要的部分都是服务水平协议(SLA),它概述了你的供应商的承诺。你想确保SLA覆盖了性能、故障时间通知、和其他关键要素,以及不能做到这些承诺的后果。SLA还应该详述数据模式和如何将数据规格化并呈现的规则。
▪▪选择正确的架构——有必要为(基于你app的重要性和要求的安全程度的)SaaS应用使用正确的架构。确保你的数据架构支持多租户,这样软件可以在供应商的服务器上运行以便服务多个用户(租户)。
业务纵向
云计算已变成许多商业app的一个普遍的交付模式,且被广泛用于会计、协作、客户关系管理(CRM)、管理信息系统(MIS)、企业资源规划(ERP)、计价、人力资源规划、内容管理(CM)供应链管理、在线备份、商务智能(BI)、服务管理等等。
云测试方法
云测试并没有明确定义的现成的方法,因为每个公司都有自己的要求。但是,下面列出的已有的佳做法可以有助于成功。
▪▪分析一下你公司的app在云上运行时是否足够灵活。
▪▪要明白转向云时你可能会遇到的困难。
▪▪选择恰当的供应商有必要,因为它会决定你的app会变成什么样以及其财务可行性,即你可以计算总拥有成本(TCO)等。
▪▪好好了解可用的测试工具及它们测试不同云应用的优缺点。概念验证可以帮助选择恰当的自动化工具,因为由于云应用的敏捷,自动化起着关键性作用。使用20-80-20法则,即将占据80%执行时间的20%的脚本和20%的测试工程师技能自动化。
▪▪准备一张路线图,即关于如何在云中测试app的测试计划。
云中测试不同类型的分类
图1.4中测试的不同类型可以用基于云的测试解决方案来执行。
▪▪功能测试——业务测试下的指定测试类型
▪▪非功能测试——安全和性能测试下的指定测试类型
▪▪运行测试——兼容和现场测试下的指定测试类型
图1.4 不同种类的云中测试