前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >专栏 >如何开展大规模集成测试

如何开展大规模集成测试

作者头像
CKL的思考
发布于 2024-06-17 09:55:19
发布于 2024-06-17 09:55:19
1730
举报
文章被收录于专栏:CKL的思考空间CKL的思考空间
在《质量保障体系从1到N的

1. 什么是端到端集成测试

端到端集成测试,又叫SIT拉通测试,主要关注不同产品间的接口集成。端到端的场景可能会涉及多个产品,多个组织,以及庞杂的参与人员都会增加拉通测试的难度。就像搭乐高,迭代测试,就像各个小零件间的配合,更多的是关注上下游依赖的系统,而端到端集成测试,就是把所有零件按照图纸(场景),组合成一个完整的玩具(实际上完整的业务流程)的过程。

集成测试有如下特点:

规模大:端到端集成测试涉及业务的全链路流程,需要配合的系统一般比较多,规模大;

系统多:实际的业务场景相对复杂,需要多系统配合,不论哪个环节出问题,对业务而言,就是失败的;

涉及人员多:由于前面两个原因,涉及到人员就会很多,需要做好沟通和协调,对组织的软技能要求高;

关注数据的流向而不是单系统的异常:到了端到端集成测试,测试人员需要关注的是完整的业务场景是否能走通,异常业务流是否能回退或者有解决方案,而不需要过于关注某个节点系统内部的异常;

2. 团队组织形态

基于端到端集成测试的基本要求,又需要经常开展类似的活动(在项目上线前期,如果需要多系统协同上线,就需要做一次完整的拉通测试)。为了满足这种活动需要,我们选择了如下图所示的组织架构:

端到端集成测试的人员,需要从各系统团队中抽取出来(角色包含测试和产品,必须有产品加入),这些人即参与日常的迭代测试,了解当前迭代系统的业务需求,同时在开展端到端测试的时候,抽出来负责端到端测试,由各团队负责人统筹安排,一般来说SIT任务优先级更高。当SIT任务集中时,可以牺牲迭代内的任务来支持SIT。当SIT相对任务较少时,可以支持更多迭代内的任务。

同时这种组织方式信息更加透明,知识能够及时共享。接口人可以将SIT发现的问题更快地分享给团队内,团队内可以针对问题及时调整迭代。同时迭代内开发新功能的信息可以及时共享为后续SIT测试打下基础。但缺点也比较明显,端到端集成测试任务和迭代内容易发生资源冲突,迭代内需要留一定buffer给端到端集成测试。

3. 开展端到端集成测试的前期准备

因为涉及人员多,规模大,为了更好地开展端到端集成测试,需要做好充分的事先准备,才能更好地开展活动,应对变化。所以,在开展端到端测试之前,需要梳理好准入条件,以便评估风险。一般会包含如下准入条件:

迭代需求研发完成度:由于平时大家关注的点都在各自的迭代中,对于哪些需求是否研发完成,未完成的Story对整体的业务影响是什么并不清晰,所以需要在端到端集成测试前,明确迭代任务是否都已开发完成,如果有未完成的,需要在这里明确出来,让团队知道并评估影响。

迭代测试报告:各子项目需要出具各自迭代的测试报告,以便团队整体评估风险;

端到端测试人员名单:方便后续做沟通和协调,也有利于整体产能和人力资源的评估。

端到端测试用例:在开展端到端测试之前,需要完成对应端到端测试用例的评审(具体的形式下文再阐述)。

环境对齐:由于涉及的系统多,各系统又有各自的环境,所以需要在开展端到端集成测试前,确认各系统对接的环境是正确的(这里可以另开一个文档来记录,明确各系统对应的IP、端口、中间件地址等,也方便后续排查问题能够快速对应的服务器)

基础数据准备:根据业务场景和测试用例,需要各团队准备好对应的基础测试数据,避免在测试过程中因为缺少基础数据而导致测试阻塞(根据经验,这里是最容易出问题的地方,需要认真对待)

4. 测试用例输出与评审

首先,需要和产品、业务一起确认端到端集成测试的业务场景。与迭代测试用例不同,端到端测试的用例更关注从上游到下游整个贯通的场景。测试用例如何设计也是非常有挑战的事情。每个产品都在SIT自测时设计了自己的测试用例,如果用笛卡尔集拼接,数量将指数级增长。所以需要按照端到端的业务场景编写用例,以关键性的核心业务展开辐射到各个产品上,保证业务场景测试充分。

根据上图的场景路线图,输出测试用例。对于测试用例的组织形式,也与迭代测试不同,因为阅读和执行测试人员的对象不同(在迭代测试中,测试用例的阅读对象是测试人员,所以不需要很细致,甚至只需要功能点就可以了。但是在端到端测试中,测试用例的阅读对象是产品或者业务,还有可能是一线业务人员,所以需要把测试用例写得更明确些)。我们采用的测试用例模板如下图所示:

5. 端到端测试过程实践

在端到端测试开展的期间,需要关注以下内容:

人员集中办公:由于这个活动涉及的人员较多,所以需要一个集中办公,降低沟通成员,让相关人员更专注地开展测试活动,也更有利于问题的推动解决。

明确每日的执行目标:没有目标就无法跟进度。一般开展端到端测试的时间会比较长(多轮次,多场景,至少1星期的时间),所以需要明确每天的测试进展,大家往同一个目标去努力。

可视化:在这么多人场景下,如果无法做到可视化,那问题的跟进就会非常麻烦,所以需要一个大看板来随时反馈进度和阻塞点,我们利用Excel的强大函数功能,做了如下实时看板:

同时,对测试过程中发现的问题进行实时的跟踪记录,确保发现的问题都被记录在册,以便后期做复盘时,提供有效的数据支撑。

在整个端到端集成测试的执行过程中,需要测试负责人实时推进和解决随时发现的问题,除了代码的问题,更多时候会有接口的问题,业务方案的问题。在与业务,PO,BA以及其他产品的人员讨论中,测试人员作为信息交汇点,需要具备业务和技术的结合智慧,提出自己的认知,从用户的使用角度,从技术的成本角度,统一考虑,以最优的成本守护价值。同时要根据迭代内的测试反馈,不断地调整测试策略,制定重点的测试场景,对迭代内测试不充分,对于端到商发现问题较多和风险较高的功能进行回归测试

6. 测试问题复盘

因为整体的测试执行过程场景复杂,人员多,遇到的问题也会比较多,所以需要在每日完成测试执行任务后,做及时的复盘,发现并解决过程问题,并根据当天实际的执行情况,对第二天的任务做出针对性的调整,提高测试执行效率。

具体问题具体分析,这里就不放相关的案例了。

7. 测试人员的思维转换

在整体的端到端测试过程中,不管是总体的负责人,还是各业务系统的测试人员,都面临着与迭代测试完全不同角色。在迭代测试中,测试人员更关注的是局部功能的业务验证和风险识别,但是在端到端测试中,测试人员需要做出至少以下几点的思维转换:

a. 作为团队引擎驱动问题的解决:

当PO或者其他产品人员在集成测试中发现问题时,测试人员首先要进行一个基础判断,是否是配置问题,数据问题,环境问题。如果确实是缺陷,则在缺陷上补充自己的分析和判断,流转给开发同学及时修复。如果是新的需求或者业务方案问题,则引入BA一起讨论澄清。

测试人员在集成测试中是最关键的角色,就像一个引擎,驱动整个团队来快速解决问题,使得集成测试能够顺利进行。测试人员也是迭代内交付团队的一个屏障,将非代码问题都屏蔽在团队之外,减轻团队的工作量,有效地保障迭代内的交付。

b. 作为价值守护者

测试人员是质量的守护者,同时也是价值的守护者。在集成测试中,除了代码的问题,更多时候会有接口的问题,业务方案的问题。在与业务,PO,BA以及其他产品的人员讨论中,测试人员作为信息交汇点,具备业务和技术的结合智慧,提出自己的认知,从用户的使用角度,从技术的成本角度,统一考虑,以最优的成本守护价值。同时要根据迭代内的测试反馈,不断地调整测试策略,制定重点的测试场景,对迭代内测试不充分,SIT发现问题较多和风险较高的功能进行回归测试。

8. 挑战点

在主持过多场次不同业务的端到端场景后,个人感觉对于这类测试活动,对负责人最大的挑战不在于对业务的熟悉程度(当然需要对整体的业务有相对完整的了解,也做不到对各系统都相当了解),而在于出现问题时,如何高效地沟通并推动问题的解决。所以在开展端到端测试之前,负责人需要对每个系统的对接人要有相当的熟悉,出现问题时,需要快速找到对应的人员,组织小团队讨论解决方案,并推动问题的解决,这就需要有非常好的沟通和协调能力,并要有高度的责任心,才能把这件事做好。

9. 小结

文章篇幅较长,基本上完整的介绍了大规模集成测试的实践,脑图整理如下:

注:在编写本文的过程中,关于理论的部分,参考了张海云老师在TW公众号上发表的文章:大规模敏捷测试怎么做(集成篇)

本文参与 腾讯云自媒体同步曝光计划,分享自微信公众号。
原始发表:2024-06-06,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 CKL的思考空间 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
暂无评论
推荐阅读
编辑精选文章
换一批
大规模敏捷测试怎么做(集成篇)
对于大规模的产品来说,即使采用敏捷的方式来做,也依然避免不了多个服务集成以及和其他产品集成的过程,这一篇就和大家一起讨论一下在大规模敏捷测试中如何进行SIT(System Integration Testing)集成测试。
ThoughtWorks
2024/01/31
3030
大规模敏捷测试怎么做(集成篇)
大规模敏捷测试怎么做(基础篇)
大多数的敏捷团队是由10位以内不同角色的人员组建。其中包括但不仅限于BA、QA、UX、PM、DEV等关键角色。我们通过成熟的方法论以及每日站立会议(Stand-up Meeting)、迭代计划会议(Iteration Plan Meeting)、迭代启动会议(Iteration Kickoff Meeting,IKM)、开卡(Kickoff)、结卡(Desk Check,DC)和回顾会议(Retrospective)等各种逐渐“标准化”的敏捷活动,能够顺利地运行一个小规模的项目。
ThoughtWorks
2023/08/08
3480
大规模敏捷测试怎么做(基础篇)
精准高效测试计划,人工智能帮你制定
测试计划是指描述了要进行的测试活动的范围、方法、资源和进度的文档。它主要包括测试项、被测特性、测试任务、谁执行任务和风险控制等。
霍格沃兹测试开发Muller老师
2024/04/10
1590
如何有效提升软件测试质量?
软件质量保障 | 测试质量保障、自动化工具/框架、平台开发、算法测试、BAT/TMD大厂测试岗面试题/面经分享、测试团队建设与管理、测试新技术的分享。 偶尔也聊聊个人工作的收获与经验。可以帮忙内推字节、阿里、百度等大厂。
互联网金融打杂
2022/08/01
1.2K0
如何有效提升软件测试质量?
【软件测试系列六】《软件系统测试方案》
本文档是完成[XXX]项目测试的指导性文件。本文档给出了对测试需求、测试环境、测试过程及测试结果的总体要求, 这也是本测试项目中其他文档编写及结果评价的基础。
再见孙悟空_
2023/09/19
1.5K0
技术分享 | 软件项目管理与跨部门沟通协作
软件项目管理有其特定的对象、范围和活动,着重关注成本、进度、风险和质量的管理,还需要协调开发团队和客户的关系,协调内部各个团队之间的关系,监控项目进展情况,随时报告问题并督促问题的解决。
霍格沃兹-测试开发学社
2022/05/17
4330
微服务产品级敏捷: 重新定义产品的集成测试
微服务产品级敏捷: 重新定义产品的集成测试
Ken Fang 方俊贤
2018/01/05
5370
敏捷测试价值观、方法和实践读书笔记(3)
Richard Knaster 和 Dean Leffingwell 在《SAFe4.0精粹:运用规模化敏捷框架实现精益软件与系统工程》中提道:“企业的领导者必须拥抱精益-敏捷”思维。如果领导者只是通过语言而不是自身的行动来支持“精益-敏捷”思维人们很快就会认识到他们不是在全心全意地推动变革。他们必须知晓方法,强调终身学习需要用新的行为践行这些价值观、原则和实践。所以在规模化敏捷 SAEe的系列培训课程中,专门有一门课程叫作Leading SAFe,主要对管理层和主管级别以上的领导进培训。
顾翔
2024/09/10
1260
敏捷测试价值观、方法和实践读书笔记(3)
UT /SIT/ UAT
单元测试任务包括:1 模块接口测试;2 模块局部数据结构测试;3 模块边界条件测试;4 模块中所有独立执行通路测试;5 模块的各条错误处理通路测试。;
PM吃瓜
2019/11/20
4.9K0
千人规模组织级 DevOps 演进的 9 个实践及技巧
在 2018 年年底,我参与了某一个大型产品团队的 DevOps 转型。这个产品的团队分为三个组织:产品业务部门(50 多人),产品 IT 部门(250 多人),以及产品的外包团队(800 多人)。 经过产品化和微服务拆分后,组织开始以独立业务的方向划分。但是,由于之前的组织划分,团队并没有成为一个全功能的团队。而是采用原先的交付模式:业务部门提出需求,然后让 IT 部门开始设计解决方案,最后交给外包团队开发和测试。并且将测试团队和 计算平台团队变成各子产品的的公共资源,如下所示:
顾宇
2019/12/24
6870
千人规模组织级 DevOps 演进的 9 个实践及技巧
ISTQB高级-测试经理国际认证试题及答案(二)
1、TM-1.2.1 (K4) 为了计划测试活动和工作产品以实现测试目标,必须对一个系统的测试需求进行分析。
王大力测试进阶之路
2021/08/23
2.7K0
ISTQB高级-测试经理国际认证试题及答案(二)
TMQ微信沙龙第二期回顾
一堂课学会探索式测试 活动时间:2016年6年16日 微信线上交流群活动介绍TMQ微信沙龙第二期分享圆满结束啦~本次分享的主题是探索式测试相关的知识。共有来自四十五个公司的52位测试小伙伴参加了活动~想知道活动分享了啥吗?往下看吧! 活动嘉宾: 嘉宾简介:赵燕,2012年加入腾讯担任系统测试工程师,负责QQ同步助手,换机助手,相册管家等多款产品的测试工作,测试积累颇多;主要研究探索式测试的实践和推广,在公司内给微信团队、手管团队等做过多次分享,有着丰富的探索式测试实战经验。 分享主题:深入浅出Andr
腾讯移动品质中心TMQ
2018/02/05
5610
TMQ微信沙龙第二期回顾
软件测试人员必问的十大面试题..
在软件测试职位面试中,准备并回答一些常见的必问面试题非常重要。这些问题涵盖了软件测试的关键概念、技术和实践,帮助面试官评估你的能力和经验。理解这些问题的重要性是为了在面试中展示你的专业知识和技能,以及你在软件测试领域的实际应用。
测试小兵
2024/04/18
7280
软件测试人员必问的十大面试题..
腾讯老鸟谈软件测试的完整流程
  其实测试的过程并不是固定的,它只是一种规范,也可以把它当作一种指导。但是真实的产品测试和项目测试中,一定是要灵活运用的,甚至是在不断的根据实际情况变化。我在其他平台、app上讨论软件测试时,经常提到:项目测试和 产品测试一定是不一样的。
顾翔
2021/08/13
4690
《Google软件测试之道》告诉你什么是测试
第一章:Google软件测试介绍 1.Google的测试团队并非雄兵百万,我们更像是小而精的特种部队,我们依靠的是出色的战术和高级武器 2.在Google,写代码的开发人员也承担了测试的重任.质量从来就不仅仅是一些测试人员的问题,每个写代码的开发者本身也是测试者,质量在名义上也是由这样的开发测试组合共同承担 3.Google团队由SWE(软件开发工程师), SET(测试开发工程师),TE(测试工程师)组成 4.在Google,对于一个测试人员,如果在某个产品中工作满18个月之后,就可以无理由地自愿转岗到其他
互联网金融打杂
2018/04/03
2.9K0
《Google软件测试之道》告诉你什么是测试
告别重复劳动!CTest7.0自动化测试框架,释放测试工程师生产力
在软件测试过程中,测试用例(Test Case)是为验证开发功能是否符合需求而设计的一组数据集合,包含前置步骤、测试步骤、预期结果等关键信息。测试团队所设计的测试用例应用于多轮测试执行从而判断测试结果是否符合预期,是整个软件测试过程中的驱动引擎。
嘉为蓝鲸
2025/03/18
980
告别重复劳动!CTest7.0自动化测试框架,释放测试工程师生产力
软件测试工程师从入门到进阶一(概念篇)
掌握自动化测试技术,可以把你从大量重复性的手工劳动中解放出来,这样可以把更多的精力花在更多类型的测试上。
小皮侠
2024/07/25
1720
软件测试工程师从入门到进阶一(概念篇)
我对敏捷软件测试的理解与实践
随着敏捷软件研发过程的引入,敏捷测试也开始成为研发团队的重点关注对象。在行业内,有些企业正在做敏捷测试的尝试,有些也取得了不错的效果。
yuanyi928
2019/08/30
1.3K0
我对敏捷软件测试的理解与实践
无限极|零售行业数字化转型BizDevOps建设实践
在11月召开的中国 DevOps 社区广州峰会上,无限极(中国)有限公司DIT开发与测试中心的测试与效能经理陈顺生 分享了其团队在支持公司业务数字化转型中的 BizDevOps 建设实践,令在场听众受益匪浅。
腾讯云 CODING
2023/12/26
4060
无限极|零售行业数字化转型BizDevOps建设实践
功能测试流程规范建设
测试规范,网上随便一搜,都是一堆堆的范文,其实规范也是因人而定,每个人的规范或者依据项目或者部门,需要有特殊性,不过虽然可以定制部分,但是大体还是有很多相似之处,下面这个规范,是笔者之前整理过的一份,如果需要,你可以参考一下,如果有摩擦,欢迎我们来一起探讨。
测试开发社区
2020/08/27
1.8K0
功能测试流程规范建设
推荐阅读
相关推荐
大规模敏捷测试怎么做(集成篇)
更多 >
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档