【软件测试】如何梳理你测试的业务

简介: 【软件测试】如何梳理你测试的业务

在日常的测试工作中,不知道大家是否会有梳理自己测试业务的习惯。我个人觉得这个事情是值得做的,最好还可以培养成一个习惯。


一、为什么要梳理业务?


因为在业务测试中,作为测试人员,熟悉负责的业务是非常重要的,而通过阶段性的梳理总结,可以让你的业务知识系统化的沉淀下来。


当被问起这个业务系统的测试重点在哪里?难点如何克服?为什么要这样设计等等问题,可以有条不紊的进行输出。


又或者,当你任务需要交接,或者需要别人支援你的业务,你可以自信的把文档丢过去,拍拍胸脯说:看一遍你就知道了。


同样大家平时都在做业务,同样并没有多少别的技术层的产出,这也是为什么有人能拿A,有人却只能拿C的原因之一。


另外,当你有了多种业务的沉淀之后,你甚至可以提炼出很多通用性的东西,姑且称为“方法论”吧。


二、梳理框架


优点这么多,如何进行梳理呢?这里我参照常规的服务系统,写一些思路(框架),仅供参考。


1. 测试场景


这部分可以整理出业务系统的测试场景。


可以重点贴出核心的测试场景,附带上全量的测试用例。如果用例有后续迭代,也可以根据时间和内容进行分分类,放在这里。


2. 业务


这里就可以整理有关业务的更多细分领域。比如:


1)各种配置


业务涉及到的各种后台配置、后台地址、配置影响范围、必须非必须配置、配置顺序、特殊注意项等等。


2)前端


涉及到的产品前端功能是哪些、重要链接、主要的前端交互等等。


3)核心流程


梳理业务的核心流程,可以包含对用户的操作流程,以及对应交互的接口。


另外,可以自己手动画一画核心业务流程图,一般产品会给出,但是有时间自己画一画,脑海里再过一过更加深刻,说不定还有意外发现来补充测试设计。


还有一个重点就是业务数据的处理过程,如果涉及到其他像kafka、es、缓存等中间件,数据处理的细节也可以整理出来。


4)问题排查


在测试工作中一定会遇到杂七杂八的问题,抽出一些典型问题,记录下排查手段以及可能因素,方便自己以及其他人查看。


3. 系统


业务层梳理完,就应该关注应用服务层的了。


1)应用站点


可以从入口往下,整理出业务系统下各个站点,服务名称、作用等信息。


2)接口与日志


这里可以汇总下接口文档,根据不同情况进行分类,反正目的就是为了高效查看对应文档。


在测试过程中如何查看关键性的日志也很重要,对理解接口交互,排查问题都很有帮助。这里可以记录不同流程,涉及到的站点,如果过滤日志等信息。


3)MQ消息


记录交互的 MQ 有哪些,topic、不同tag的作用是什么、消息体等等。


4)异常机制


记录下系统都有哪些异常的处理机制,常见的比如超时、重试、补偿、兜底等等。


4. 数据


到了数据层了,自是来不开 mysql 、缓存、mongoDB等等。


梳理好各数据库名,用来处理什么,核心的表以及关键的字段,比如一些订单类型、状态等等。


redis这些nosql数据库,梳理重要的 key、field、value等等。


5. 安全


比如接口的鉴权机制,一些涉及到更复杂加密处理的接口的细节。


还有一些并发操作类的控制也可以整理出来。


6. 性能


通常是单接口和链路场景的性能。


1)接口性能


比如:前端用户体验最直观的接口、创单接口、详情接口、预处理接口等等。


2)链路性能


最核心的链路场景,串起来进行压测。


3)限流


如果涉及到限流的场景,可以进一步整理出考虑限流的因素,触发的机制,处理的手段等。


7. 数据分析


数据是多样的,比如日志数据、埋点数据、或者后台看板大屏的数据,列出需要关心的点,以及数据的正常趋势、不正常的趋势。


8. 监控报警


通常就是测试右移后关注的点,可以监控线上运行的服务,对核心业务接口的一些常规指标进行监控。另外对日志系统不同类型的日志数量监控也有必要。


如果运维配套系统比较完备的话,我们测试自己就可以进行配置了,如果没有的话,积极的参与其中吧。


9. 应急预案


一些核心业务系统,可能还会针对极端情况有应急预案。比如机房切换、灾备预案等。

相关实践学习
日志服务之使用Nginx模式采集日志
本文介绍如何通过日志服务控制台创建Nginx模式的Logtail配置快速采集Nginx日志并进行多维度分析。
相关文章
|
2月前
|
机器学习/深度学习 人工智能 自然语言处理
提升软件测试效率与质量:AI驱动的自动化测试策略
【2月更文挑战第19天】 在快速迭代的软件发展环境中,传统的手动测试方法已无法满足高效率和高质量的要求。本文探讨了人工智能(AI)技术如何革新现有的软件测试流程,通过引入AI驱动的自动化测试策略,旨在提高测试覆盖率,减少人为错误,优化资源分配,并缩短产品上市时间。我们将分析AI在识别潜在缺陷、生成测试用例、执行测试以及结果分析中的应用,并讨论实施这些策略时可能遇到的挑战和限制。
226 3
|
11天前
|
敏捷开发 机器学习/深度学习 Java
Java中的异常处理机制深入理解与实践:持续集成在软件测试中的应用探索自动化测试在敏捷开发中的关键作用
【4月更文挑战第29天】在Java编程中,异常处理是一个重要的概念。它允许开发者在程序执行过程中遇到错误或异常情况时,能够捕获并处理这些异常,从而保证程序的稳定运行。本文将详细介绍Java中的异常处理机制,包括异常的分类、异常的处理方式以及自定义异常等内容。 【4月更文挑战第29天】 随着敏捷开发和DevOps文化的兴起,持续集成(CI)已成为现代软件开发周期中不可或缺的一环。本文将探讨持续集成在软件测试领域内的关键作用、实施策略以及面临的挑战。通过对自动化构建、测试用例管理、及时反馈等核心要素的详细分析,揭示持续集成如何提高软件质量和加速交付过程。 【4月更文挑战第29天】 在当今快速发
|
12天前
|
机器学习/深度学习 人工智能 自然语言处理
提升软件测试效率:智能化测试用例生成策略
【4月更文挑战第28天】 随着软件开发的复杂性不断增加,传统的软件测试方法面临巨大挑战。为了提高测试覆盖率并确保软件质量,需要投入大量的时间和资源去设计、执行和维护测试用例。本文探讨了一种基于人工智能(AI)技术的智能化测试用例生成策略,该策略能够自动识别关键的测试路径,动态调整测试用例,并优化测试集合。通过引入智能化工具和算法,显著提升了软件测试过程的效率和有效性。
|
13天前
|
测试技术
【测试】优化软件测试:有效测试用例设计的关键
【测试】优化软件测试:有效测试用例设计的关键
|
14天前
|
jenkins 测试技术 持续交付
深入探索软件测试中的持续集成与自动化测试实践
【4月更文挑战第27天】 在当今软件开发的快速迭代过程中,持续集成(CI)和自动化测试已成为确保代码质量和加快交付速度的关键因素。本文将探讨如何通过实施持续集成流程,并结合自动化测试策略来优化软件测试工作。我们将分析持续集成的原理、自动化测试的最佳实践以及如何将这些方法应用于实际项目中,旨在为读者提供一套完整的解决方案,以提高软件项目的效率和质量。
16 3
|
16天前
|
机器学习/深度学习 人工智能 自然语言处理
提升软件测试效率:智能化测试用例生成策略
【4月更文挑战第25天】 在软件开发生命周期中,高效的测试用例设计是确保产品质量的关键步骤。随着人工智能和机器学习技术的不断进步,智能化测试用例生成已成为提高软件测试效率和效果的有力工具。本文将探讨智能化测试用例生成的策略,包括基于模型的学习、自然语言处理以及遗传算法等,并分析其对传统测试方法的影响,最后提出实施智能化测试的实践建议。
19 0
|
1月前
|
jenkins 测试技术 持续交付
软件测试|docker搭建Jenkins+Python+allure自动化测试环境
通过以上步骤,你可以在Docker中搭建起Jenkins自动化测试环境,实现Python测试的自动化执行和Allure报告生成。 买CN2云服务器,免备案服务器,高防服务器,就选蓝易云。百度搜索:蓝易云
51 6
|
1月前
|
敏捷开发 运维 测试技术
深入探索软件测试中的持续集成与自动化测试实践
【4月更文挑战第3天】 在现代软件开发的快速迭代过程中,持续集成(Continuous Integration, CI)和自动化测试已成为确保产品质量和加快交付速度的关键实践。本文旨在探讨CI/CD流程中自动化测试的实施策略、面临的挑战以及优化方法。通过对自动化测试工具选择、测试用例设计、集成到CI流程的实践案例分析,为读者提供一套系统的实施指南和性能优化技巧,以期帮助团队提升测试效率,降低错误率,最终实现软件开发周期的缩短和质量的提升。
|
2月前
|
机器学习/深度学习 人工智能 自然语言处理
提升软件测试效率:AI驱动的自动化测试策略
【2月更文挑战第30天】随着人工智能(AI)在软件开发周期中的日益普及,其在提高软件测试效率方面的潜力正受到越来越多的关注。本文探讨了如何通过集成AI技术来优化自动化测试流程,从而减少重复工作、提高错误检测率和加快反馈速度。我们将分析当前AI在自动化测试中的应用,并提出一系列策略以利用AI改进测试案例生成、执行和维护过程。
116 0
|
3月前
|
关系型数据库 MySQL 测试技术
【软件测试】 初识软件测试
【软件测试】 初识软件测试

热门文章

最新文章