MSE 微服务测试---自动化回归最佳实践|学习笔记

简介: 快速学习 MSE 微服务测试---自动化回归最佳实践

开发者学堂课程【MSE 微服务测试最佳实践-自动化回归MSE 微服务测试---自动化回归最佳实践】学习笔记,与课程紧密联系,让用户快速学习知识。  

课程地址:https://developer.aliyun.com/learning/course/970/detail/14891


MSE 微服务测试---自动化回归最佳实践

内容介绍

一、微服务测试---自动化回归

二、为什么需要自动化回归

三、云上自动化回归最佳实践

四、云上自动化回归最佳实践我们能做什么

 

一、微服务测试---自动化回归

1.当前的微服务迭代周期短,版本多,服务需要具备独立的测试和快速验证能力来支撑服务测试耗时缩短以及测试活动。面临着多方面的挑战,首先有以下这些挑战,服务不具备独立验证能力,自动化用例开发效率低,在高并发的使用场景下,健壮性如何保证如何及时发现网线网服务的出现异常这些挑战。

2.什么是微服务测试—自动化回归我们能做什么?

其中,微服务测试自动化、回归测试自动化用例,开发效率很低的主要解决方案恢复测试自动化回归能做什么?

聚焦于三个方面,首先,第一方面,基于微服务契约信息快速编排被测服务管理自动化测试用例,第二方面,可视化用力编辑界面丰富的预置检查点,内置变量支持自定义变量参数传递,持续自动化回归测试,第三方面帮助您高效管理违规业务测试场景,能够帮助业务快速验证、快速交付。

二、为什么需要自动化回归

product  service应用是提供来查询商品列表和通过ID查询商品详情的功能,然后business  service应用提供的是添加商品到购物车的功能。

1542.png

如果想验证用户的操作,从查询商品列表到通过ID查询商品详情,然后再将产品添加至购物车这个业务场景,现在一般是怎么做?

主要是有这么三个步骤,第一个就是先进入product service 应用部署所在的机器或者容器,通过curl命令调用查询商品列表,然后验证返回商品列表是否不为空。返回商品列表是否为空,然后第二步呢?把查询商品列表返回值中的ID拼接到curl命令的入参中,然后再通过ID来查询商品详情,验证详情中的字段是否符合预期。

第三步呢,就是进入business service应用部署所在的机器或者容器,然后把ID拼接到curl命令的入参中调用拼接该商品至购物车验证添加是否成功。

如果以上这些场景一次验证不通过,那么还要反复重复进行这些操作。至此就可以总结出云上微服测试的几点问题,第一点就是云上网络拓朴复杂业务链路场景验证难,以及这些重复繁琐的操作呢,验证效率是非常低的,那么我们能做什么?

1948.png 

结合我们的研发实践和研发理念,有以下三个特点,第一点,简单0编码开发成本,0环境搭建成本,1键去触发自动化回归,第二点,高效可视化编排测试用例,按需创建/销毁测试机,快速反馈测试结果,第三点就是专业spring cloud dubbo多协议的支持,能够便捷的测试宽带测试参数的管理以及丰富的预置检查点。

三、云上自动化回归最佳实践

如何去验证上面提到的加购物车业务场景,下面一步步来讲解一下最佳时间的操作过程。

11158.png

首先自动化回归的入口,现在是位于服务引擎MSC控制台里面,然后其中在恢复治理中心会服务测试自动化回归这个菜单,下面通过点击创建用力进入到新建用力页面。

11236.png

新建用力页面可以通过填写用例名称以及步骤名称来便于对测试用例的管理。首先添加的第一个步骤是查询商品列表,商品列表里面包含的应用是product service框架类型是spring cloud以及选择的pass,然后通过点击访问一次,可以看到页面就会展示这一次调用的查询商品列表,返回的数据可以看到这个请求出参展示了详细的返回信息。

11406.png

那么可以看到这个第一个商品的商品列表的信息,如果想获取这个商品里面的这个ID,那么很简单,只要点击这个出参提取。助手里面可以看到会出现一个弹窗,弹窗里面只要点击选中,想要去选中复制的这个ID,然后把复制这个ID粘贴到断言这个tab下面的检查对象中,然后同时选择这个检查对象是不是空,意思就是预期这个ID不为空,然后再把复制的这个ID的表达式放到这个出参提取tag里面的出参提取表达式中,然后并对这个表达式重命名一下ID。

11619.png

接下来编排第二步,查询商品详情,同样的要选择被测服务,然后其中到path这一步,希望把这个path里的ID传入的是上一步中提取的ID,那么很简单,只需要把这个path切切换为自定义输入,然后把里面的ID修改成通过花括号括起来,把ID放到花括号里面的方式设置即可,然后就可以通过,就可以实现将上一步的ID传到这一步这个操作啦。

然后也同时对这一步进行断言和其中断言里面设置了ID等于之前传的上一步提取的ID以及验证它的name就是它的商品名。名称以及商品价格有一定的预期,直接以后也要对这个对这一步进行提取。他提取其中提取了两个参数,一个是name,一个suprise,这两个参数都将作为第三步的入参,然后来编排一下。

11930.png

第三步,添加商品至购物车,其中选择的配色服务是CA service,关键类型是double,然后选择对应的服务和方法,然后可以注意到这个基本信息里面填入的三个参数,就是在第一步里面获取的提取的ID,以及在第二部里面提取的name和suprise。

那这些他的入参备选方式也是刚才提到的,就是只要以多乐符加花括号,把出参名括起来的方式传进来就可以了,那么到这一步就成功了,然后同时这一步也会设置对应的断言,就是把他预期他的response就是包含处这一步第三步就编辑完成了。最后点击一下保存配置,然后再点击立即执行,就可以验证业务场景。查看这些历史,展示了一个验证不通过的执行记录,可以快速的找到执行里面第二步是验证不通过的,其中,这一部里面的断言就是price预期是900,但实际是800认证不通过,那么具体的经验说明就是说等于数字比较失败了。

12305.png

四、云上自动化回归最佳实践我们能做什么

12328.png

即将自动化回归能力会提供多样性的用参能力,比如说会提供系统参数、环境变量、系统函数、环境变量、集合变量、全局变量等等,入参丰富的能力能够快速地编排实现我们的测试用例多样性以及会提供测试及管理能力,能够对测试用例进行分组运行,还有丰富的执行能力,这时串行、并行、定时以及插件执行等等,甚至我们会以服务测试,服务巡检,服务压测结合将服务测试的一键生成巡检任务,生成压测场景。

目前除了被MSE集成微服务测试的能力,还即将被EDAS等等云产品集成,能够将微服务测试能力作为一个基础能力,被更多的云产品集成。

另外将以更多的微服务产品联动,比如ACM、CSB,我们与他们形成联动,能够助力大家保障云上业务稳定性。

相关文章
|
8月前
|
监控 算法 NoSQL
Go 微服务限流与熔断最佳实践:滑动窗口、令牌桶与自适应阈值
🌟蒋星熠Jaxonic:Go微服务限流熔断实践者。分享基于滑动窗口、令牌桶与自适应阈值的智能防护体系,助力高并发系统稳定运行。
1104 1
Go 微服务限流与熔断最佳实践:滑动窗口、令牌桶与自适应阈值
|
9月前
|
数据可视化 Java BI
将 Spring 微服务与 BI 工具集成:最佳实践
本文探讨了 Spring 微服务与商业智能(BI)工具集成的潜力与实践。随着微服务架构和数据分析需求的增长,Spring Boot 和 Spring Cloud 提供了构建可扩展、弹性服务的框架,而 BI 工具则增强了数据可视化与实时分析能力。文章介绍了 Spring 微服务的核心概念、BI 工具在企业中的作用,并深入分析了两者集成带来的优势,如实时数据处理、个性化报告、数据聚合与安全保障。同时,文中还总结了集成过程中的最佳实践,包括事件驱动架构、集中配置管理、数据安全控制、模块化设计与持续优化策略,旨在帮助企业构建高效、智能的数据驱动系统。
429 1
将 Spring 微服务与 BI 工具集成:最佳实践
|
9月前
|
Prometheus 监控 Java
日志收集和Spring 微服务监控的最佳实践
在微服务架构中,日志记录与监控对系统稳定性、问题排查和性能优化至关重要。本文介绍了在 Spring 微服务中实现高效日志记录与监控的最佳实践,涵盖日志级别选择、结构化日志、集中记录、服务ID跟踪、上下文信息添加、日志轮转,以及使用 Spring Boot Actuator、Micrometer、Prometheus、Grafana、ELK 堆栈等工具进行监控与可视化。通过这些方法,可提升系统的可观测性与运维效率。
782 1
日志收集和Spring 微服务监控的最佳实践
|
9月前
|
jenkins Java 持续交付
使用 Jenkins 和 Spring Cloud 自动化微服务部署
随着单体应用逐渐被微服务架构取代,企业对快速发布、可扩展性和高可用性的需求日益增长。Jenkins 作为领先的持续集成与部署工具,结合 Spring Cloud 提供的云原生解决方案,能够有效简化微服务的开发、测试与部署流程。本文介绍了如何通过 Jenkins 实现微服务的自动化构建与部署,并结合 Spring Cloud 的配置管理、服务发现等功能,打造高效、稳定的微服务交付流程。
1026 0
使用 Jenkins 和 Spring Cloud 自动化微服务部署
|
机器学习/深度学习 人工智能 监控
软件测试中的自动化测试策略与最佳实践##
在当今快速发展的软件行业中,自动化测试已成为确保软件质量和加速产品上市的关键工具。本文将探讨自动化测试的重要性,分析不同类型的自动化测试工具和框架,并深入讨论实施自动化测试的最佳实践。通过案例研究和数据分析,我们将揭示如何有效整合自动化测试到软件开发生命周期中,以及它如何帮助团队提高测试效率和覆盖率。 ##
315 1
|
设计模式 前端开发 JavaScript
自动化测试框架设计原则与最佳实践####
本文深入探讨了构建高效、可维护的自动化测试框架的核心原则与策略,旨在为软件测试工程师提供一套系统性的方法指南。通过分析常见误区,结合行业案例,阐述了如何根据项目特性定制自动化策略,优化测试流程,提升测试覆盖率与执行效率。 ####
534 6
|
存储 监控 测试技术
测试脚本编写和维护的最佳实践有哪些?
测试脚本编写和维护的最佳实践有哪些?
535 50
|
Devops 测试技术 持续交付
软件测试中的自动化与持续集成:最佳实践与挑战
在快速迭代的软件开发周期中,自动化测试和持续集成(CI)已成为提高软件质量和加速产品上市的关键策略。本文探讨了自动化测试和CI的实施如何帮助开发团队提前发现缺陷、缩短反馈循环,并确保代码质量。我们将深入分析自动化测试的策略选择、工具应用以及面临的挑战,同时提供一些克服这些挑战的最佳实践。
709 27
|
监控 数据管理 测试技术
API接口自动化测试深度解析与最佳实践指南
本文详细介绍了API接口自动化测试的重要性、核心概念及实施步骤,强调了从明确测试目标、选择合适工具、编写高质量测试用例到构建稳定测试环境、执行自动化测试、分析测试结果、回归测试及集成CI/CD流程的全过程,旨在为开发者提供一套全面的技术指南,确保API的高质量与稳定性。
|
数据管理 测试技术 持续交付
软件测试中的自动化测试策略与最佳实践
在当今快速迭代的软件开发环境中,自动化测试已成为确保软件质量和加速产品上市的关键手段。本文旨在探讨软件测试中的自动化测试策略,包括选择合适的自动化测试工具、构建有效的自动化测试框架以及实施持续集成和持续部署(CI/CD)。通过分析自动化测试的最佳实践,本文为软件开发团队提供了一系列实用的指南,以优化测试流程、提高测试效率并减少人为错误。
551 4

相关产品

  • 微服务引擎