iSQE丨黄颍华主题演讲《北京汽车软件测试历史进程与展望》
访问次数: 446 次   
发布时间: 2025-02-27

iSQE研讨会·主题演讲

在年初圆满落幕的iSQE“新质生产力·培养未来人才·更高质更高效”研讨会中,我们有幸邀请到几位非常重量级的嘉宾,他们在领域内的深厚造诣与丰富经验,不仅为我们带来了启发性的观点,也为现场与会者提供了宝贵的知识与见解。每一位演讲嘉宾的分享都充满了智慧与思考,激发了我们对行业未来发展的无限畅想。

本系列文章将逐一呈现每位嘉宾的主题演讲内容。今天,我们为大家带来的是来自黄颍华先生的精彩演讲内容,他在此次研讨会中分享的主题是《北京汽车软件测试历史进程与展望》。

iSQE主题演讲实录

各位来宾,各位领导,下午好!接下来由我为大家分享《北京汽车软件测试历史进程与展望》。这个内容主要围绕整个测试过程管理的研究与分享展开。我们发现,在软件测试领域,大家对测试技术和各种测试工具的研究很多,但很少有人提及测试管理到底该如何进行。因此,今天我将从测试管理的角度,结合我们公司的实际情况,分享一些经验和思考。 

首先,我简单介绍一下我们公司。我们公司是世界500强企业,成立时间较早,规模庞大,员工数量众多,同时也是北京的纳税大户,纳税额排名第一。大家可能比较熟悉的是北京汽车,但实际上我们旗下还有很多品牌,包括北汽福田、梅赛德斯奔驰的戴姆勒合资公司、北京现代等。此外,我们在零部件领域也有多家合资公司,比如麦格纳、米尔、博格华纳等。在服务贸易领域,我们有北华夏出行、北京腾龙等,涵盖了4S店、租车公司等业务。同时,我们还有专门的北汽产投,整体公司规模非常大。 

目前,我们总院的发展方向主要集中在两个领域:电动化和智能化。在电动化方面,我们一直坚持研发零起火的电池,强调“只冒烟、不失火”。目前,这一目标在我们的极狐品牌上已经实现,极狐品牌至今没有发生过自燃事件,所有起火事件都是由车内物品引发的。我们在电驱和充电技术方面也有深入研究,特别是充电技术,已经实现了800伏超高压充电,十分钟可以充电197公里,速度非常快。在智能化方面,我们正在进行深入布局,包括SOA服务框架软件平台和高效率中心的建设,为未来的智能驾驶提供深度支持。我们的车型涵盖范围广泛,从吉普到纯电轿车、油车,以及奔驰、现代、重卡、轻卡等。 

接下来,我将分享总院软件测试的历程。我们的测试团队成立于2012年,当时我们有三台HIL设备,用于VCU测试。HIL技术在零几年左右被提出,我们在2012年引入了这一技术。随着公司的发展,我们开始自主研发BMS、MCU、VCU,迭代速度非常快。然而,我们发现测试工作逐渐跟不上研发的节奏。于是,我们决定开发自动化测试工具。当时我们面临一个选择:是使用市面上的现有工具,还是自主研发?经过一系列思考,我们选择了自主研发,因为我们意识到这一领域的技术必须自主掌握,我们的目标是达到极致的测试效率。当时,我们的设备种类繁多,除了DSPACE,还有ETAS等。在此基础上,我们提出了中间件的测试框架概念,通过中间件将各种平台连接起来,开发出了简单易用的工具。随着集团对新能源的投入加大,我们得到了集团的支持,引入了CSTQB体系。当时我们没有CSTQB培训预算,直接向领导汇报后,资金很快批复下来,我们全员参与了体系的导入和流程转换。到2018年,北汽新能源的销量在全球顶尖,尤其是在2017年和2018年,销量位居全球第一、第二。我们在这一背景下上线了远程测试平台。这个平台是我们半自主研发的,设计完成后委托供应商进行开发。我们考虑到未来的全球布局,提出了远程程控设备的概念,实现了线上控制,测试设备可以部署在任何地方,随时调度。到2019年,我们的销量依然很高,全球排名第三。当时我们的目标是重回全球第一,因此我们引入了TMMi体系,成为汽车行业第一个获得TMMi三级满分的企业。当然,现在已经有汽车企业拿到了TMMi四级。到2021年,销量开始下滑,设备投入减少,但对自动化测试的要求和效率提升的需求依然在增加。于是,我们上线了自动用例设计工具,基于ISTQB知识体系和MBT(基于模型的测试)技术,将MBT落地到我们的测试流程中。目前,我们的测试用例基本上都是通过这个工具自动生成的。到2023年,由于整体销量不佳,我们开始思考如何利用现有资源提升效率。我们在原有资源的基础上,不断开发自动化工具,包括实车自动化和“万花筒”工具。万花筒工具是基于我们之前的四个设备集成开发的。我们发现,测试工序非常多,用户界面复杂,因此我们决定开发一个统一的工具底座,支持插件式扩展,用户可以自由拔插功能模块。这个工具已经全面上线。回顾我们的测试历程,主要有三个驱动力:组织诉求、效能提升和管理诉求。组织诉求包括集团提出的全球第一目标和销量要求;效能提升是我们一直在追求的方向;管理诉求则涉及测试资源的多地分布和测试团队的协调。在这些背景下,我们形成了一系列的测试管理体系。 

接下来,我想谈谈测试的质量与控制。测试不仅仅是一个技术活动,它涉及的人员非常多,因此它更像是一个社会活动。我们不能单纯从技术角度看待测试,因为很多时候,测试中的问题并不是技术问题,而是管理问题。如果我们不把这些问题想明白,就会导致大量的内耗。管理本身就是成本,这一点大家都理解。质量控制的手段通常被认为是测试活动,但测试本质上也是一种管理,通过打开和检查找出问题。如果管理不是必须的,那么测试也不是必须的。这一观点在汽车行业尤为明显,因为很多领导并不直接接触软件,他们凭本能判断测试的必要性。在他们看来,如果没有问题,为什么要做测试?因此,测试在他们眼中并不是必须的。那么,测试在什么情况下是必须的?我们发现,如果初始质量足够好,测试就不是必须的。但为什么我们还要构建这些测试体系呢?因为我们希望通过测试提升初始质量。我们需要考虑如何让开发阶段的输出直接可用,如何实现代码自动生成、需求到代码的自动转化,甚至业务分析的自动化。如果我们能够实现这些目标,测试的作用就会减弱。但如果这些目标无法实现,测试就变得非常重要。在汽车行业,软件测试的目标通常是市场质量,但这并不是一个显性的目标。因为汽车行业的主计划并不是软件,而是车上最贵的零部件。在油车时代,最贵的零部件是发动机;在电车时代,最贵的零部件是电机和电池。软件本身并不是主计划,因此软件测试的目标与市场质量的关联并不直接。很多时候,软件测试团队甚至没有直接参与项目的第一层面,项目的第一层面通常是软件经理。因此,如果我们不考虑清楚这些背景,软件测试框架的设计就会变得非常被动。 

接下来,我介绍一下当前汽车行业软件测试团队的实际框架。通常,我们会有一个主测试团队,它与开发部门是依存关系。除此之外,主测试团队前面可能还有一个开发测试团队,这个团队可能是隐含的,交付物可能没有在项目组层面体现。那么,主测试团队和开发测试团队之间的关系应该如何界定?这是一个需要思考的问题。此外,我们还有品牌方测试团队。比如,总院为极狐汽车开发了一款车,极狐汽车就会有一个品牌方测试团队;北京汽车、梅赛德斯等品牌也有各自的品牌方测试团队。在这种情况下,测试团队的数量非常多,主测试团队对市场质量负责的路径非常长,责任划分也不清晰。如果我们没有想清楚这一点,资源投入也会变得不明确。除了品牌方测试团队,我们外部还涉及项目组和质量部。质量部在汽车行业与传统的软件公司不同,它不仅管软件,还管硬件,主要是管硬件。因此,质量部会给测试团队下达很多指标,包括过程指标和项目指标。项目组也会推动测试团队的工作。此外,性能标定团队也会参与测试,他们需要决定软件测试是在性能标定前还是后进行,这都需要整体规划和设计。还有一种团队叫做“游击式测试团队”,它看起来似乎不应该存在,但实际上它的出现是因为项目组、品牌公司或某些领导对软件质量参与团队不够信任。这种不信任往往是由于信息传达不准确或直达程度不够导致的。数字化的本质是信息传达,但如果我们只是单纯地进行数字化,而没有确保信息的准确传达,数字化就会失去意义。因此,信息传达的准确性也非常重要。 

那么,测试团队的划分应该以什么为边界?是以质量为边界,还是以任务目标为边界?如果以质量为边界,质量在上述各团队间如何切分?如果以任务为边界,任务和质量之间的关系又是什么,谁对总体质量负责?这些都是我们需要考虑的问题,由于时间有限我们只是基于当前的分析抛出大家可能没有注意到的问题,不做详细展开。 

基于这些内容,我们提出了五个维度,用于测试团队评估自己所处的状态:目标细化、行为自主、管理强度、信息直达和设计清晰度。目标细化是指我们对上层目标的拆分是否足够细致;行为自主是指测试团队在质量部、项目组等多方管理下对测试活动的主导程度;管理强度是指上层对测试团队的管理力度;信息直达是指信息的传达是否准确;设计清晰度是指需求的颗粒度是否清晰。我们认为,测试团队的设计应该基于对这五个维度评估后再做基于责权和资源分配的框架。我们提出了两种框架:一种是以主测试团队为核心,直接对市场交付结果负责;另一种是由质量部直接对测试团队进行管理。第一种框架下,主测试团队需要有最高的话语权,以确保信息传递和决策效率,可以考虑设置测试总监;第二种框架下,测试团队可以专注于测试本身,不需要设置测试总监,但质量团队得懂测试,因为可能质量团队需要制定测试策略。 

最后,我想强调指标制定的重要性。我们发现,指标的客观性比定义过程更重要。比如,我们最初使用功能达成率作为指标,后来发现这个指标无法有效控制项目,于是改为实现率,再后来改为VFS实现率,但依然无法控制。最终我们发现,问题的根源在于数据统计方式不客观,所有数据都是主观提报。因此,我们改用测试报告的功能达成率作为指标,将结果的真实性与测试数据的客观性做了结合,确保了数据的客观性。 

展望未来,我们计划从需求到测试构建一体化的过程,通过大模型和知识图谱生成测试用例。我们已经在需求图谱方面取得进展,下一步是构建层级化的知识图谱,进一步提升测试效能。此外,我们还在深化MBT技术,并计划推出汽车软件测试工程师认证计划,帮助工程师构建结构化的知识体系。 

以上就是我的分享,谢谢大家!

返回