针对企业级SaaS 的软件测试

SaaS简介

随着云计算和个人移动终端(具有互联网功能的个人电脑和手机)的普及,越来越多的应用软件公司使用它SaaS(Software as a service)模式,从销售产品到销售服务。SaaS企业有Salesforce(客户关系管理CRM提供商),ServiceNow(企业服务管理软件提供商),Workday(人力资源和财务管理系统)。

云计算迅速改变了将软件应用程序安装在预置硬件上的传统模式Cloud Computing 云计算,每个企业都可以通过互联网访问应用程序。这种在云中运行软件的模式被称为软件即服务(即SaaS)。在这种模式下,企业不需要维护或升级软硬件。在大多数情况下,企业可以随时随地通过任何设备登录并开始工作。-摘自SalesForce官网

摘自Oracel官方网站

以SalesForce例如,系统架构如下: Salesforce官网)

Salesforce系统架构分为四层:

最上层:CRM软件,包括销售、服务、市场、社区、分析、应用软件等第三层:企业软件生态系统(2700 合作伙伴软件)第二层:灵活可扩展的元数据平台(数据,UI,最底层的合作流程、数据分析、工作流程、身份定义、二次开发功能等。):可靠的云平台,作为基础设施SaaS测试面临的挑战

SaaS新的测试挑战主要体现在软件版本的快速迭代上,云计算平台上运行的同一套应用软件需要为成千上万的客户服务(与以往的单机版本不同,客户部署在企业内部网络上)。

测试团队需要处理以下问题:

测试周期短,没有足够的时间提前频繁测量现场升级"(Live Upgrade)新功能的快速启动影响了数据迁移的安全性和完整性

在具体的测试工作中,有以下几个方面值得关注:

版本升级:

众所周知,企业级应用的升级是一个巨大的挑战。1.确保升级过程顺利完成 2. 升级后,原功能必须正常运行3.正常运行新功能。

通常可以在测试平台上进行模拟升级测试,或者在现场环境升级后进行测试,或者将前两点结合起来,在测试平台上进行预模拟测试,然后在现场环境中进行验证测试。(这可以解决测试环境和现场环境之间的差异,由于资金和预算,测试环境不可能像现场环境那样高负荷、高性能)

2. 安全性:

鉴于SaaS数据安全、完整性和权限控制变得非常重要。为了充分理解业务逻辑和安全策略,我们可以写好测试用例。

3. 集成

客户可能会将企业本身的应用程序集成起来SaaS,测试工程师无法完全验证其功能。在这种情况下,接口测试变得非常重要。特别是软件升级不会影响集成的其他应用。

4. 数据迁移:

无论是从企业的原始软件还是其他软件,客户现有数据的迁移SaaS应用程序的迁移将是一个挑战。需要充分了解需求并进行足够的验证。这需要测试工程师与业务人员和产品经理进行更密切的合作。

5. 授权:

SaaS授权方法可能是灵活的,如根据功能、使用量(如交易量、数据量)、并发用户数量等。这些都需要单独测试。这是计费的关键问题。

6. 性能:

要建立适当的性能测试模型,最大限度地模拟真实户场景,都需要充分发挥测试工程师的智慧。

SaaS测试策略

针对SaaS测试可分为以下几类:

功能测试:包括新功能的手动测试(scripted testing exploratory testing),以及既有功能回归测试(自动化测试 CI)集成测试:第三方应用程序的功能集成和与基础设施云平台的交互。安全测试/权限控制测试:验证软件权限策略、网络安全、基础设施安全策略验证等(需要补充和细化)可靠性测试:如升级过程中的错误响应、故障恢复等。性能测试:处理高峰负荷和长期负荷的能力接口测试:API接口测试操作测试:计费相关测试兼容性测试:支持不同版本的浏览器

常用的测试工具有:

JMeter:Web性能测试工具Robot Selenium:自动化测试框架和Web自动测试工具

扫码免费用

源码支持二开

申请免费使用

在线咨询