什么是云测试?SaaS 测试教程
云测试
云测试是一种软件测试类型,其中软件应用程序使用云计算服务进行测试。云测试的目的是使用云计算测试软件的功能和非功能需求,以确保更快的可用性、可扩展性和灵活性,从而节省软件测试的时间和成本。
云计算是一个基于互联网的平台,它远程提供各种计算服务,如硬件、软件和其他与计算机相关的服务。
云计算主要有三种模型
- SaaS – 软件即服务
- PaaS – 平台即服务
- IaaS – 基础设施即服务
云中的测试类型
整个云测试分为四个主要类别
- 整个云的测试:将云视为一个整体,并根据其功能进行测试。云和SaaS供应商以及最终用户都对进行这种类型的测试感兴趣
- 云内部测试:通过检查其每个内部功能进行测试。只有云供应商才能执行这种类型的测试
- 跨云测试:在不同类型的云(如私有云、公共云和混合云)上进行测试
- 云中的SaaS测试:根据应用程序需求进行功能和非功能测试
SaaS测试
SaaS测试是一种软件测试过程,其中以软件即服务模型构建的软件应用程序的功能和非功能需求都经过测试。SaaS测试的目标是通过测试软件应用程序的数据安全性、完整性、性能、兼容性和可扩展性来确保质量。
云测试侧重于核心组件,例如
- 应用程序:它涵盖了功能、端到端业务工作流、数据安全、浏览器兼容性等的测试。
- 网络:它包括测试各种网络带宽、协议以及数据通过网络的成功传输。
- 基础设施:它涵盖了灾难恢复测试、备份、安全连接和存储策略。基础设施需要经过验证以符合法规要求
云中的其他测试类型包括
- 性能
- 可用性
- 合规性
- 安全性
- 可扩展性
- 多租户
- 实时升级测试
如何进行云测试
云测试类型 | 执行的任务 |
---|---|
SaaS或面向云的测试 | 这种类型的测试通常由云或SaaS供应商执行。主要目标是确保云或SaaS程序中提供的服务功能的质量。在此环境中执行的测试包括集成、功能、安全、单元、系统功能验证和回归测试以及性能和可扩展性评估。 |
云上的在线应用程序测试: | 在线应用程序供应商执行此测试,检查基于云的服务的性能和功能测试。当应用程序与遗留系统连接时,将验证遗留系统与云上正在测试的应用程序之间的连接质量。 |
跨云的基于云的应用程序测试: | 为了检查基于云的应用程序在不同云之间的质量,执行这种类型的测试。 |
云测试的示例测试用例
测试场景 | 测试用例 |
---|---|
性能测试 |
|
安全性测试 |
|
功能测试 |
|
互操作性和兼容性测试 |
|
网络测试 |
|
负载和压力测试 |
|
云测试中的挑战
挑战1:数据安全和隐私
云应用程序本质上是多租户的,数据盗窃的风险始终存在。作为一项云测试策略,供应商应向用户保证其数据的安全性。
挑战2:通知期短
云提供商会给现有客户很短的升级通知期(1-2周)。当手动验证SaaS应用程序的更改时,这是一个大问题。
挑战3:验证接口兼容性
随着云服务提供商的升级,外部接口有时也会升级,这对一些习惯于旧接口的订阅者来说是一个挑战。云(SaaS)订阅者需要确保用户可以选择他们想要使用的接口版本
挑战4:数据迁移
将数据从一个云提供商迁移到另一个云提供商是一个巨大的挑战,因为两个提供商可能具有不同的数据库模式,并且需要大量精力来理解数据字段、关系以及它们如何在SaaS应用程序中映射
挑战5:企业应用集成
企业应用集成需要对出站和入站数据(从客户端网络到SaaS应用程序,反之亦然)进行数据集成验证。数据隐私要求进行彻底验证,以确保SaaS订阅者的数据安全和隐私。
挑战6:模拟实时升级测试
云测试的最大挑战是确保实时升级不会影响现有的已连接SaaS用户
云测试与传统测试
测试参数 | 传统测试 | 云测试 |
---|---|---|
主要测试目标 |
|
|
测试成本 |
|
|
测试模拟 |
|
|
功能测试 |
|
|
测试环境 |
|
|
集成测试 |
|
|
安全性测试 |
|
|
性能和可扩展性测试 |
|
|