大型分布式服务系统如何进行精准测试?保证测试质量的前提下,最大化减少测试无效工作

背景:
目前分布式服务系统比较多,比如一个柜面、网银渠道系统,涉及几十个乃至上百个下游系统,每次增量版本提测后,开发往往会说,影响范围比较大,做个主链路或者全量回归吧,可是由于每次版本时间测试时间都很紧张,工作量大,如果只改了几行代码,还要要回归这么长时间?对于测试人员来说说,要保证测试用例全部执行到位,很难做到。
因此代码改动后的 影响范围评估,以及测试完成后的 覆盖面评估 是个难题,目前大部分是依靠个人经验和业务熟悉度判断大概的范围。这种评估方式以主观判断为主,缺乏数据支撑,目前是想在我们测试管理系统有系统工具提供客观数据,基于数据进行量化评估。支持精准测试,在迭代版本的测试中最小化测试化最大化保证质量,只覆盖修改的内容,用有限的操作发现全部的问题。
难点所在
如果要实现精准测试,就需要建立代码与用例的映射关系, 当代码发生改动时推荐出关联的用例,能让测试精准地回归,降低成本,提高效率。大家在以往的实践过程有没有好的总结;可以拿出来分享的?目前这块我们正在逐步展开。

参与4

1同行回答

匿名用户匿名用户
1、自动化 1.1 测试数据管理 业务测试数据、sql脚本 1.2 测试环境管理 当前比较好的方案是,一键启动一套测试环境用于自动化测试,测试完成后,推送报错相关的信息 1.3 测试用例管理 接口测试、单元测试的用例管理 用例与代码覆盖范围的绑定 量大的场景下,测试用例的有...显示全部

1、自动化
1.1 测试数据管理 业务测试数据、sql脚本
1.2 测试环境管理 当前比较好的方案是,一键启动一套测试环境用于自动化测试,测试完成后,推送报错相关的信息
1.3 测试用例管理 接口测试、单元测试的用例管理 用例与代码覆盖范围的绑定 量大的场景下,测试用例的有效利用率
2、方案
成本预算足够的话,可以考了市场面做精准测试相对还可以的几家考虑一下,比如PerfMa的XDolphin
打算自研的话,可以从以下几个方面去考虑以下,代码扫描、变更动态的分析、自动化的覆盖率、代码染色这些角度去找一下开源的工具或平台去逐步实施

高层支持的前提下,这块做好了,质量和效率的提升还是比较明显的。

收起
软件开发 · 2023-11-10
浏览284

ChatGPT 回答

针对这个问题,可以考虑以下解决思路:

  1. 建立代码与用例的映射关系

建立代码与用例的映射关系是实现精准测试的关键。可以通过代码版本控制工具(如Git)和测试用例管理工具(如TestLink)来实现。具体来说,可以在代码提交时,将代码与相关的测试用例关联起来,并在测试用例管理工具中记录下来。这样,在每次代码修改后,就可以根据代码与用例的映射关系,自动推荐出需要回归的用例,从而实现精准测试。

  1. 使用自动化测试工具

自动化测试工具可以帮助测试人员快速执行测试用例,降低测试成本和提高测试效率。可以考虑使用一些开源的自动化测试工具,如Selenium、Appium等,来实现自动化测试。在执行测试用例时,可以根据代码与用例的映射关系,只执行与修改的代码相关的测试用例,从而实现精准测试。

  1. 使用测试覆盖率工具

测试覆盖率工具可以帮助测试人员评估测试用例的覆盖面,从而发现测试用例的不足之处。可以考虑使用一些开源的测试覆盖率工具,如JaCoCo、Cobertura等,来评估测试用例的覆盖面。在执行测试用例后,可以使用测试覆盖率工具来分析测试用例的覆盖面,并根据分析结果来优化测试用例,从而提高测试效率和测试质量。

  1. 建立测试用例库

建立测试用例库可以帮助测试人员快速找到需要执行的测试用例,从而提高测试效率。可以将测试用例按照模块、功能、场景等分类,并建立测试用例库。在执行测试用例时,可以从测试用例库中选择需要执行的测试用例,从而实现精准测试。

综上所述,建立代码与用例的映射关系、使用自动化测试工具、使用测试覆盖率工具和建立测试用例库是实现精准测试的关键。通过这些措施,可以最小化测试化,最大化保证质量,降低测试成本和提高测试效率。

提问者

guoxilin
高级非功能测试专家某科技公司
擅长领域: 服务器数据库云计算

相关问题

相关资料

相关文章

问题状态

  • 发布时间:2023-08-22
  • 关注会员:2 人
  • 问题浏览:865
  • 最近回答:2023-11-10
  • X社区推广