测试是现代软件开发过程中不可或缺的一部分。 为了保证产品质量,软件测试站需要从用户的角度对产品进行全面的测试,尽快发现尽可能多的缺陷,对产品中的问题进行跟踪分析,对不足之处提出质疑和改进建议。 然而,在当前需求频繁迭代的时代,传统的测试管理方法需要测试人员花费大量的时间和精力来维护和更新测试过程中发现的测试用例和问题。 如何构建测试环境的全链路追踪分析路径,实现可控的测试进度和高效的协作沟通,是一个值得思考的问题。
可观测性云遵循可观测性的概念,为企业或团队提供测试、预发布、在线等不同环境下的端到端分析解决方案。 基于“指标”、“链路”和“日志”三大可观测支柱,提供数据驱动的可视化和集成平台分析能力,如日志管理、分布式追踪(APM、profile)、用户访问追踪等。
本文重点介绍用户访问监控、应用性能监控、日志三个场景,介绍测试人员如何从用户的角度进行端到端的测试,并基于观察云工作空间控制台,实现业务、测试、开发等多个团队,完成测试流程的流程和跟进。
如果您之前从未使用过 Observable Cloud,请执行以下步骤来收集日志、用户访问跟踪 (RUM) 和应用程序性能跟踪 (APM) 数据:
注意:日志数据关联分析侧重于异常错误分析,配置文件数据关联分析侧重于性能瓶颈分析。 您可以根据实际需求在以下模块中启用数据收集功能:
创建 Observation Cloud 帐户。
安装 DataKit
启用日志收集器。
启用应用程序性能监视 APM 收集器。
启用应用程序性能监视配置文件收集器。
启用用户访问监视 RUM 收集器。
连接到适用于 Web 应用程序的 RUM SDK
如果上述准备工作已经完成,您可以直接通过浏览器扩展安装插件。
插件**完成后,通过浏览器访问 chrome: 扩展程序
Chrome 和 Edge 浏览器目前提供自动跟踪功能。
打开开发者模式
解压浏览器插件 guance-rum-pluginzip」
单击以加载解压缩的包
选择解压缩的文件夹。
点击右上角的扩展图标,找到Guance Cloud Plugin,双击打开插件。
打开它以生成唯一的跟踪 ID。
注意:在应用访问期间,此跟踪 ID 会自动注入到 RUM 报告中。
插件操作:点击重置以生成新的跟踪 ID 并启用插件。
单击历史记录图标可查看跟踪 ID 历史记录。
单击语言图标可查看当前语言或切换语言。
单击该图标可查看帮助文档。
当用户访问和使用观察云日志查看器时,搜索关键字时会出现以下错误:
用户提供工作空间信息、操作步骤、错误消息和屏幕截图。
在测试或测试环境中复制用户操作。
找到问题后,同步用户会报告错误的原因。
登录观察云,进入用户访问监控应用列表,选择xxx web应用,进入查看器,根据上面生成的跟踪ID(轨迹ID:实际ID)筛选查看实际用户访问轨迹数据。
根据跟踪 ID 和用户提供的时间范围定位用户的访问会话。
观察云还提供会话回放,可捕获单击、鼠标移动和页面滚动等内容,并为每个会话生成记录。 点击对应会话前方的**按钮,可以更直观地了解用户的访问路径,找到发生异常的页面。
注意:会话回放功能需要将 SDK 版本升级到 30 或以上,请参阅如何访问会话回放。
根据错误功能日志查看器,找到记录所有页面访问数据。
单击“查看页面详细信息”,查看请求状态400以及是否有关联的后端链接调用数据。
向下钻取查看关联的链路调用,从上页面的请求状态中找到属于网络类型的错误,继续向下钻取查看关联日志
可选)如果需要分析性能瓶颈,可以定位 df-front-API 后端服务所在的顶层 span,查看热点,了解 span 执行过程中执行时间的占比和方法调用时间分析。
可选)单击*热点中的“查看详细信息”按钮,跳转到配置文件页面。基于剖面火焰图,分析应用在J**A Python Go等不同语言环境下的动态性能数据,直观查看CPU、内存、IO等性能问题。
与传统的测试定位方式相比,观察云的全链路分析解决方案基于用户访问监控、应用性能监控、日志等功能的结合,满足不同场景下的问题定位,实现多个团队在同一平台上对问题的协同定位和处理,不仅解决了产品服务商与用户之间重复确认的步骤, 同时也提高了产品服务商这边多个团队之间的沟通效率。将开发和测试从更新测试用例的繁重工作中解放出来,能够将更多的精力投入到了解产品的业务方向和提高团队价值上。