测试右移,让产品稳定性更高

简介: 大家好,我是阿萨。昨天我们讲了测试左移,那么有没有测试右移呢?答案是Yes。昨天通过测试左移的介绍,我们了解了通过管道里的不同测试类型左移以减少整体验证时间。今天我们学习下测试右移。测试右移简单理解就是利用好生产环境或者是线上环境去做测试。

一. 线上环境的特殊性


虽然部署到QA或Staging环境可以模拟线上环境,但实际这些环境和线上环境还是有差别的。

线上环境的复杂程度和多样性是很难在测试环境中复制的。客户流量和实际客户操作也很难模拟。而且,即使我们在测试环境上验证了新需求,随着每次新需求上线,维护线上环境的客户偏好设置以及环境的稳定性也是很重要的。

此外,生产环境一直在变化。它永远不会不变,即使你的应用程序没有变化,它下面的一切都在不断变化。它所依赖的基础设施一直在变化。所以经过一段时间后,团队发现某些类型的测试只能在产品中进行。


二. 测试右移要验证什么?


测试右移是一种利用真实部署的线上环境来测试应用程序的功能和性能的过程。

-   它可以验证线上部署是否一切顺利。
-   它可以验证不断变化的生产环境的功能以及服务是否正常。

1. 验证部署


线上环境部署和测试环境部署不同。除了部署好新功能。同时也要关注用户数据以及用户的偏好设置甚至登录状态不能丢。所以需要在线上环境验证新部署功能以及用户相关数据。


2. 故障注入


通过故障注入,验证系统的容错性以及新部署是否已经修复。通过故障注入,开发同学在维护线上环境时也可以更好地应对实际事故。


3. 使用断路器进行故障测试


断路器是一种从较大系统中断开给定组件的机制。它通常用于避免组件中的故障分散到其边界之外。但是,可以有意触发断路器,以测试系统响应方式。比如,发货系统从最近仓库发货机制测试。如果某一个仓库有异常,尽快切换到最近的其他仓库发货。某个有异常的仓库就可以理解为断路器。


可以有意触发断路器来评估两个重要方案:


●断路器打开后,回退是否正常工作?它适用于单元测试,但无法确保它在生产环境中的行为符合预期,而无需注入错误来触发它。

●断路器在需要时是否打开?是否配置了正确的敏感度阈值?故障注入可能会强制延迟和/或断开连接依赖项,以观察断路器的响应能力。除了评估是否发生了正确的行为外,确定其发生速度是否足够快也很重要。


4. 业务连续性和灾难恢复 (BCDR)


另一种形式的错误测试是故障转移测试。团队应具有所有服务和子系统的故障转移计划。计划包括应涵盖多个主题:

●服务关闭对业务的影响的清晰说明。

●映射在平台、技术以及制定 BCDR 计划的人方面的所有依赖项。

●灾难恢复过程的正式文档。

●定期执行 DR 演练的节奏。


三.总结


无论准备了多少预生产测试层,在生产环境中测试兼容性都是必要的。发布到产品环境只是工作的一半。另一半是通过实际的工作量来确保质量。


没有任何测试环境像生产环境一样。生产环境随时随地在变化,所以团队永远不会完成生产中的测试。这包括监视、故障注入、故障转移测试和所有其他形式。



相关文章
|
7月前
|
消息中间件 监控 测试技术
消息队列和应用工具产品体系-性能测试场景和工具
消息队列和应用工具产品体系-性能测试场景和工具
86 0
消息队列和应用工具产品体系-性能测试场景和工具
|
机器学习/深度学习 人工智能 算法
一文让你了解AI产品的测试 评价人工智能算法模型的几个重要指标
一文让你了解AI产品的测试 评价人工智能算法模型的几个重要指标
877 0
一文让你了解AI产品的测试 评价人工智能算法模型的几个重要指标
|
1月前
|
缓存 运维 Serverless
应用研发平台EMAS产品常见问题之测试检查更新没有反应如何解决
应用研发平台EMAS(Enterprise Mobile Application Service)是阿里云提供的一个全栈移动应用开发平台,集成了应用开发、测试、部署、监控和运营服务;本合集旨在总结EMAS产品在应用开发和运维过程中的常见问题及解决方案,助力开发者和企业高效解决技术难题,加速移动应用的上线和稳定运行。
|
1月前
|
机器学习/深度学习 人工智能 监控
视觉智能平台常见问题之体验产品的美颜测试关掉如何解决
视觉智能平台是利用机器学习和图像处理技术,提供图像识别、视频分析等智能视觉服务的平台;本合集针对该平台在使用中遇到的常见问题进行了收集和解答,以帮助开发者和企业用户在整合和部署视觉智能解决方案时,能够更快地定位问题并找到有效的解决策略。
23 1
|
1月前
|
监控 关系型数据库 MySQL
Flink CDC产品常见问题之使用3.0测试mysql到starrocks启动报错如何解决
Flink CDC(Change Data Capture)是一个基于Apache Flink的实时数据变更捕获库,用于实现数据库的实时同步和变更流的处理;在本汇总中,我们组织了关于Flink CDC产品在实践中用户经常提出的问题及其解答,目的是辅助用户更好地理解和应用这一技术,优化实时数据处理流程。
|
2月前
|
数据可视化 jenkins 测试技术
可视化BI类产品如何设计测试框架?
可视化BI类产品如何设计测试框架?
|
2月前
|
监控 测试技术
APP的稳定性测试如何做?
APP的稳定性测试如何做?
|
3月前
|
测试技术 应用服务中间件 数据库
什么是稳定性测试?
什么是稳定性测试?
145 0
|
3月前
|
数据挖掘
工程监测仪器振弦采集仪详细的稳定性测试
工程监测仪器振弦采集仪详细的稳定性测试 振弦采集仪是一种常用于工程监测的仪器,用于测量结构的振动和变形。稳定性测试是评估采集仪的测量稳定性和精度的一种方法,可以确保采集仪在长时间使用中的准确性和可靠性。
工程监测仪器振弦采集仪详细的稳定性测试
|
3月前
|
数据采集 前端开发 JavaScript
前端自动化测试:确保质量和稳定性的关键步骤
前端自动化测试:确保质量和稳定性的关键步骤
前端自动化测试:确保质量和稳定性的关键步骤