当前位置: 首页 > 质量专栏 > 监控数据有助于测试改进的 7 种方法
监控数据有助于测试改进的 7 种方法
2022-10-21 浏览次数1622

  我们生活在微服务和大数据时代,尤其是在 Web 服务的背景下。生产中的监控和测试是扩展现代软件系统的关键策略。但是测试监控如何适应更大的图景呢?测试人员应该如何使用监控,它如何帮助我们?监控系统的发现对我作为质量总监的工作产生了重大影响。我发现了很多关于产品、它的消费者,甚至我自己的程序的信息。它极大地帮助了我管理我的偏见并极大地改进了我的测试工作。假设您的网站日复一日地接待 800 万访问者。您如何确保它不仅适用于您全新的工作 MacBook,而且适用于运行 Windows 11 并使用过时浏览器的客户?监控能力可能对您有益。

  以下是针对测试人员的监控数据的七个主要优势,您可以使用它们来激励您的团队使用监控以及您自己的经验。

  确定错误的价值

  您了解刚刚发现的错误的含义吗?我可以回答这个问题,因为我有一个监控设置,它为我提供了额外的空间来收集有用的信息。我小组的成员开始向我介绍其他人发现的具体问题,以询问他们的影响,而不是在发现另一个问题后简单地摇头。有了一个完整的监控系统,我可以利用观察数据的数据库复制情况,让我确定有多少客户在生产中受到影响。

  当然,这只适用于目前正在生产的东西,但它可能真的很有用。了解我认为重要的一些缺陷只影响了 10% 的客户,这对我很有帮助。衡量缺陷影响的能力极大地简化了开发和优先排序。

  了解您的客户

  通过使用监控和分析,我可以获得大量有关用户的信息。例如,您产品的客户使用哪些浏览器和小工具?我最近参与了一项活动,通过分析,我们发现该产品最常用的浏览器是 Opera。我很惊讶这在 2022 年仍然如此,特别是因为我们的团队计划完全终止对这个浏览器的支持。监控使我们了解到我们的消费者并不总是像我们一样:他们以各种方式接受技术。

  查看浏览器和设备活动数据等统计数据,甚至用户与我们产品的交互方式,可能会令人大开眼界。通过查看人们如何与产品互动,我可以确定产品最常使用的功能是什么——这不一定是我所期望的。监控使我能够更好地衡量和了解产品以及对消费者至关重要的东西。

  突出 KPI

  有时会因为业务和开发团队不说同一种语言而感到沮丧。然而,监测帮助我弥合这些部门之间的差距。首先,我确定了团队的关键绩效指标 (KPI)。不同的部门对什么是必要的有不同的看法。有时我不得不质疑 KPI,因为某些部分可能无法准确反映产品性能,我们不应该简单地遵循数字。但是,在指定 KPI 之后,我可以通过使用工具开发仪表板来显示 KPI,该仪表板利用具有特定时间框架的监控数据。例如,因为功能 A 是最成功的,所以我构建了一个仪表板来衡量用户使用它的操作,例如周末与其交互的用户数量。

  使用模式来调查问题

  对于监控,我最看重的是它让我们了解出现的问题的能力。使用 SQL 等基本查询语言,我可以追溯特定问题的路径,让我们能够发现趋势并找到更多遇到同样困难的客户。

  例如,我曾经发现我无法在特定的工作流程中使用我们产品的关键功能。我不记得我遵循的具体步骤,但监控帮助我追踪我的行为。之后,我可以调查产生问题的情况。我在系统中搜索了执行相同场景的人,并尽可能简化了情况。我发现,并非每个遵循相同程序的用户都有相同的结果——对于一组用户,该功能有效。当我更仔细地查看数据并验证其他用户属性时,我发现问题与客户的位置有关。只有少数几个地方受到影响。

  更多地发现问题出现的原因可能既令人着迷又具有启发性。从监控数据中收集的见解可以极大地帮助您的开发团队解决问题。

  优先考虑您的测试

  了解哪些功能是真正重要的——基于事实,而不是团队中的某个人告诉我的或我认为的——使我能够有效地集中我的测试。我利用观察到的数据构建了查询,以帮助我回答以下示例问题:

  哪些功能最受客户欢迎?、哪些浏览器在这些客户中最受欢迎?、用户如何与功能交互?

  一旦我回答了这些问题,我就可以继续前进。例如,如果移动 Firefox 覆盖了 75% 的消费者,我必须事先进行大量测试。最常用的功能、浏览器和设备也应该进行最多的测试,这样我们才能对我们的产品质量和客户满意度充满信心。

  检查回归

  当客户群广泛时,您的测试可能无法涵盖所有可能的回归案例。为了使这种情况不那么严重和可怕,您可以考虑 dogfooding(对您的产品进行内部测试)和用户测试(仅发布给愿意处理缺陷的选定客户)。当重大更新到来时,特别是如果它只针对一部分用户,我会在我开发的实时监控仪表板中跟踪并分析用户交互。用户将涵盖设备和浏览器的组合并以他们使用产品的方式测试产品,这一事实令人惊叹。

  在许多版本中,我通常自己在生产环境中运行一个快速的手动探索性测试,然后我检查显示查询结果的实时仪表板,以跟踪与正在启动的更新相关的用户交互。我经常按环境或浏览器过滤仪表板。例如,即使我没有配备 Microsoft Edge 移动浏览器的设备,我也可能会测试 Edge 移动浏览器用户是否可以执行与其他浏览器用户相同的流程和操作,而不会遇到任何功能差距。如果监控提供实时数据,我也经常监控某些时期。

  配置警报

  我不仅限于监控发布。我还可以设置在超过某个阈值时生成的自动通知。一旦我确认并同意了 KPI 定义,我就可以快速为这些条件设置警报——例如,登录用户应占平均每分钟浏览某个网站的所有用户的 30%。另一个例子是使用关键功能的人数。

  实时监控有利于包含业务逻辑的关键功能。我设置了一些警报,还会向我发送一封电子邮件,以便我可以尽快研究行为发生的原因。然后,如果它被确认为实时问题并被接受,我们可能会尽快确认并解决它。

  在测试 Web 服务时,请考虑它们可能全天 24 小时可用,并且流量可能会干扰警报这一事实,因此请确保存在问题。我偶尔会发现异常情况,但这提出了一个问题,即如果 KPI 不可预测,它是否足够可靠。

  敲定

  许多公司根本没有监控程序,而那些经常缺少特定组件的公司,您作为测试人员会发现这些组件是有益的。您必须调查您的产品以查看是否可能记录 API 查询、参数等。然后,在一个通用位置传达这些元素的重要性,您可以在其中看到监控数据。它可能是带有 Web 界面的监控工具之一,也可能只是一个数据库,如果您设置了监控系统,您可以查询该数据库。不要害怕去检查一些东西。事实很可能会令人大开眼界——不仅对你,而且对整个团队。

    卓码软件测评是一家[ 具备CMA、CNAS双重资质 ]的专业做软件测试的第三方软件测试服务机构, 可根据您的需求提供各类软件测试服务,并出具合格有效的软件测试报告。点击→→可了解测试报价

        部分文字、图片来自网络,如涉及侵权,请及时与我们联系,我们会在第一时间删除或处理侵权内容。负责人:曾菲       电话:4006070568

文章标签: 软件测试
咨询软件测试