顺平网站建设石家庄做网站百度推广

张小明 2026/1/3 18:15:39
顺平网站建设,石家庄做网站百度推广,单页设计网站,专业手机网站制作公司网约车服务端承接了网约车核心交易流程整体链路串联工作#xff0c;其涵盖交易细粒度的场景达百万级别#xff0c;核心交易链路涉及几百个下游服务。这督促我们的质量保障手段要粗细结合#xff0c;既能保障核心业务的服务可用性#xff0c;又要保障海量用户场景的正确运行…网约车服务端承接了网约车核心交易流程整体链路串联工作其涵盖交易细粒度的场景达百万级别核心交易链路涉及几百个下游服务。这督促我们的质量保障手段要粗细结合既能保障核心业务的服务可用性又要保障海量用户场景的正确运行。对于质量保障在线上阶段我们的主要挑战在于业务场景的量级太大相关业务监控很难做精细化配置。在线下阶段我们的主要挑战在于任意修改都可能带来几十个品类上千个场景的新功能测试工作量一旦有场景遗漏就会增加bug遗漏到线上的概率从而引发影响面较大的系统故障发生。为此网约车服务端利用测试流量触发与测试结果验证分离思想在线上建立场景级流量监控手段在线下利用多工具归一化验收方式充分发挥多种工具的流量覆盖能力大大降低手工测试比例。在这样的业务质量保障过程中我们发现业界通用的一些保障手段如自动化、流量回放、业务监控等在高复杂业务逻辑的校验能力上心有余而力不足。自动化自动化作为最常规的手段在网约车服务端的质量保障中起着不可或缺的作用它能够对核心场景较大影响面的故障有提前拦截的效果。但其不足是精细化场景及校验点的覆盖需要付出非常大的成本这里精细化的校验点指的是网约车交易主链路的接口测试中经常遇到的大量上下游交互逻辑的确认。流量回放流量回放作为低成本高覆盖场景的一种保障手段也经常被应用到服务端的质量保障工作中。但是其往往依赖线下环境及其他依赖如账号等具有足够高的仿真度。同时其发现故障的过程往往伴随着处理大量无效的diff噪音而很难快速确定业务系统“出了什么问题”。业务监控业务监控是线上阶段最常见的故障感知方式往往能够达到较好的覆盖度和较快的感知及跟进。但是其定位一般设定为影响面较大的核心指标及通用指标且一般对系统表现超过固定阈值或阈值范围来报警每个报警指标的建立依赖业务系统技术改造来支持数据采集。这种方式决定了其不能高灵活度及时性的配置监控指标对表现没有特定规律的小场景也无法稳定监控。基于以上分析网约车服务端期望有一种故障感知手段能够以较低成本覆盖高复杂的校验逻辑且确定性高从而进一步降低线上故障影响面。在网约车一些业务的质量保障工作中我们采用了测试流量触发与测试结果验证分离的思想将测试流量触发的工作交给具有业务改动的服务方自己负责其他方只做内部测试结果的验证。我们将改动方测试人员的测试流量进行录制并应用相应的业务规则来对双方服务交互结果进行验证将报错信息流量匹配失败信息、规则引擎校验失败信息透传给改动方测试人员协助其验证改动方服务端与其他服务端的交互逻辑。由此可实现改动方测试人员的闭环测试和结果验证。在此过程中我们具备了以下2个成功经验测试流量触发与测试结果验证分离后我们可以将测试流量触发交给改动方研发/测试只专注解决测试结果验证从而解决一些业务在团队内不闭环的问题。我们实践了一套方法用规则校验来替代人工方式的测试验证。测试流量触发 与测试结果验证分离思想测试流量触发与测试结果验证并不是什么新技术在我们传统的质量保障手段例如自动化和流量回放中我们可以把它切分为测试流量触发与测试结果验证两个步骤。具体如下图所示在构造请求方面自动化是通过人工构造而流量回放是通过录制线上用户触发的流量。在测试结果验证方面自动化是通过编写assert校验来实现而流量回放是通过diff来实现。当我们将测试流量触发与测试结果验证分离后我们可以集中火力根据需要对两个维度单独发力。在测试流量触发维度我们可以只关注工具对业务场景的覆盖度并以提高覆盖度为目标对不同测试手段进行组合使用。这里的测试手段可以不局限于工具化的测试手段实践过程告诉我们对于迭代的新功能我们总是有一定比例的流量触发是靠人工的方式去完成的。这里我们主要把控两个核心点测试流量对业务场景的覆盖度、测试场景触发的重复度及成本。对于前者当我们的测试场景总集有了之后很容易能够度量出来。对于后者我们关注的是以达到一定质量要求为目标需要进行的测试轮次和每个测试轮次的流量触发方式及触发成本。这里我们将RD/QA的测试统一来看通常认为用最低成本的测试手段去完成更多轮次的测试是一种在效率维度很好的方式。在测试结果验证维度我们只关注工具对业务校验点的覆盖度并以可接受的覆盖度为条件来确定该种方式的应用边界范围。这里的业务校验点是为验证迭代的代码提供的服务符合业务场景。验证范围包括接口入参、出差、下游调用、配置读取、存储数据等。在网约车服务端基于测试流量触发与测试结果分离思想我们做了两个实践接下来详细介绍。线上流量巡检—— 0测试触发全结果验证线上流量巡检的目标线上流量巡检是网约车服务端对测试流量触发与测试结果验证分离的一种实践将该思想实践到生产环境中我们可以达到下述目标几乎0成本完成较全面的流量触发场景覆盖的目标我们将每一次真实用户对系统的请求都看做是一次对该系统的测试而对真实用户流量进行结果验证就完成了一次系统健康度的检查。规避了自动化等手段较高场景覆盖成本的弊端。对服务的健康度检查覆盖的流量元素更加全面除覆盖流量的出入参还覆盖了接口调用链路中的上下游、存储、配置等从而发现问题能力更强。对生产环境无痕。整体方案常规手段如流量回放一般会认为线上系统的历史流量总是正确的用这样的流量在线下再回放一遍来完成改造后系统的正确性验证。线上流量巡检总是致力于找到线上系统有问题的历史流量这些有问题的流量是在线上系统有代码bug发生时产生的流量。从而更快地发现线上系统“生病了”。整体技术方案中我们与流量回放共用了流量录制的能力但在对流量的处置中我们的路径及思路截然相反。致力于找到流量池中表现不达预期的那部分流量。将流量进行分桶分桶条件由流量元素形成的规则组成分桶的目标是找到每个流量的归属场景。对分桶后的流量进行校验校验的内容是该流量归属业务场景的逻辑验证。线上流量巡检的整体架构如下图所示核心处理流程有流量录制、流量解析及处理、流量分桶及校验、异常报警。接下来详细介绍实现方案具体如下流量录制流量录制的内容仅为我们关心的流量元素接口的入参、出差、下游调用入参、出差、依赖配置的读写、依赖数据库的读写、公共日志的读写。滴滴自研的fastdev流量回放工具提供的流量录制能力满足了我们绝大部分的诉求同时该工具已完成滴滴服务端绝大部分服务的覆盖。录制的内容呈现为字节流需要进入数据预处理模块。对线上用户单接口的流量元素录制后将线上流量存储到ES前从原始数据中提取出敏感信息然后进行加密使用加密后的数据对敏感信息进行局部替换对原始数据中的敏感数据进行提取和加密最终存储的是加密后的流量日志信息。流量解析及处理流量的预处理包含了字节流到完整应用层协议解析、异常数据过滤、流量关键元素的提取等步骤。目标是得到标准化的流量可供后续规则引擎使用。流量分桶及校验流量分桶的方法及校验内容都是与业务相关的由编写同学梳理业务逻辑之后编写出场景匹配条件和场景的校验点。a. 整体系统采用基于动态编译的语义规则设计由用户给出语义化指令来定义接口流量的预期一个运算单元主要负责根据指令集合匹配业务场景和校验业务预期具体指令的计算利用动态编译方法调用相应的库函数处理。b. 为提高处理速度采用分布式计算将计算任务进行数据划分但对最终处理结果做统一结果规约。c. 为避免重复计算将处理结果进行哈希存储在计算任务开始之前会先对流量特征进行哈希查找有无相关处理结果若有直接使用缓存结果作为最终结果。异常报警当线上巡检的规则引擎在做结果校验时发现不符合业务逻辑的流量根据报警策略进行报警报警信息包括关注人、流量报错信息、问题排查辅助信息等。a. 报警策略考虑了业务应用场景有几种可供用户自由选择失败强校验、失败率达到阈值、异常流量告警。b. 报警策略利于报警聚类来降低报警频次同时可简单对报警归因。当前收益网约车服务端在2020年初开始实践上述方法到质量保障工作中2023年已覆盖服务端大部分服务每年100线上bug的及时召回使其成为线上质量的有效抓手。线上巡检因为其报警的精确度和灵敏度可广泛应用到日常需求作为需求变更灰度过程中的结果验证和问题及时发现的有效手段。在服务调用方众多的平台类业务或者中台类业务的使用收益是更加可观的。后续规划当前线上巡检技术被证明适用于网约车服务端的质量保障模式并且在需求变更灰度过程中能够灵敏度更高的反映生产环境状况。目前网约车服务端在进一步提高迭代需求的线上巡检覆盖度并多次在变更灰度过程中发现代码bug快速召回线上问题及时止损。测试验收—— 测试触发去重及归一化结果验证测试验收的目标测试验收是网约车服务端对测试流量触发与测试结果验证分离的另一种实践该实践主要应用到线下环境核心目标有测试工具化以提高工具化流量触发比例和测试结果验证比例为目标将手工测试的场景不断实现工具化覆盖。测试流量触发去重以归一化结果验证为手段达到对不同测试方法、不同测试数据来源的结果进行验证避免重复测试。背景网约车服务端因为其业务特性和服务特点当前的测试方式是纯白盒测试。在测试过程中QA需要完成以覆盖所有改动代码为目标的单系统服务端测试和以覆盖所有影响面的全链路服务端测试。如此我们面临以下挑战我们一个典型需求在不同角色如RD、QA、PM之间存在较多的重复测试在不同服务QA服务端QA、客户端QA、算法策略QA之间也存在较多的重复测试。在业界这类问题往往是利用自动化/工具手段去完成整个测试过程来将重复的测试提高效率。在滴滴服务端我们所面临单一工具局限性导致使用单一工具覆盖所有测试场景及校验点的成本极高。在一些单方面修改业务测试验收模式中我们实践了利用工具化验证替代人工验证的可行性。在闭环的内部业务中我们可以使用工具触发流量来替代手工触发流量提高流量触发侧的效率。整体方案及应用实践解决上述问题的核心关键点是找到一个能够覆盖绝大多数测试验证场景的手段而线上巡检技术解决了我们这一问题。我们可以将网约车服务端测试的绝大多数的验证场景转换为线上巡检的流量匹配规则校验规则。不同于线上巡检的是在线下环境测试流量触发需要被考虑。同时技术方案的一致性让我们能够将线下为提高测试效率编写的验收规则直接在线上运行变成生产环境服务健康度检查的线上流量巡检规则。当我们把线上流量巡检规则应用到线下测试流量时我们完成了对测试结果验证此时我们需要做的就是让测试流量的触发阶段用最低成本的工具去覆盖。其中对于新需求迭代我们将测试场景分为回归场景新功能测试场景。对于回归场景我们的流量触发能力大部分是具备工具化能力的。对于新功能测试场景此种模式在演进过程中存在以下3种阶段较多占比的手工触发测试场景此时我们的主要收益为对测试结果的验证可应用场景如提测需求的新功能准入测试、RD自测需求。不断提高工具化触发测试场景占比此阶段我们不断寻找无法被工具化触发的场景通过改进工具能力或者其他方式不断降低手工触发的测试场景占比。较高或者完全的工具化比例触发此阶段的QA主要工作在于根据需求和技术方案做测试用例设计并根据用例实现工具化触发手段及验证规则的编写整个测试过程是工具触发及验证后给出测试报告提交bug移交给研发重复以上步骤直到完成测试交付。同时线下测试验收编写的规则在需求上线过程中转变为线上流量巡检的规则在需求上线/放量阶段对线上服务做健康度的检测按照这个思路一个典型的需求交付过程如下图所示。当前收益在测试验收落地过程中我们主要关注的过程指标是工具化场景覆盖度和结果指标测试效率的提升率。网约车服务端通过在业务试点初步拿到在适用项目中总体测试提效40%左右的收益。实践发现测试场景链路较长的业务、测试轮测较多的需求中测试提效收益更加明显。总结及展望在网约车服务端测试和质量保障方法的探索中因为业务模式和系统架构导致系统存在很多非常“胖”的服务从而导致测试复杂度很高。当服务耦合度高且调用链路庞大的情况下业务对数据构造、环境稳定性、工具的验证能力要求都非常高。依赖单一传统能力想要解决所有问题在以往的探索中我们付出了极高的人力成本代价。我们也在不断在问自己一个问题为什么我们的测试这么难投入这么高为什么一定要做白盒测试在不断向内分析和向外借鉴的过程中对出行服务的业务特点和合适的质量保障手段渐渐清晰。当前我们的探索还在持续也没有非常彻底地解决掉服务端测试的所有问题但我们一直在路上永不停歇~总结感谢每一个认真阅读我文章的人作为一位过来人也是希望大家少走一些弯路如果你不想再体验一次学习时找不到资料没人解答问题坚持几天便放弃的感受的话在这里我给大家分享一些自动化测试的学习资源希望能给你前进的路上带来帮助。软件测试面试文档我们学习必然是为了找到高薪的工作下面这些面试题是来自阿里、腾讯、字节等一线互联网大厂最新的面试资料并且有字节大佬给出了权威的解答刷完这一套面试资料相信大家都能找到满意的工作。视频文档获取方式这份文档和视频资料对于想从事【软件测试】的朋友来说应该是最全面最完整的备战仓库这个仓库也陪伴我走过了最艰难的路程希望也能帮助到你以上均可以分享点下方小卡片即可自行领取。
版权声明:本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!

网站维护的主要内容包括应用公园app的功能介绍

当你开发的AI语音设备突然"失聪"——麦克风采集的音频时断时续,语音识别准确率断崖式下降,你会怎么办?是反复烧录固件碰运气,还是对着示波器一筹莫展?xiaozhi-esp32项目的音频调试器正是为解决这些痛点而生&…

张小明 2026/1/2 17:28:06 网站建设

移动网站开发服务网站做竞价需要什么信息

有需要的同学,源代码和配套文档领取,加文章最下方的名片哦 一、项目演示 项目演示视频 二、资料介绍 完整源代码(前后端源代码SQL脚本)配套文档(LWPPT开题报告)远程调试控屏包运行 三、技术介绍 Java…

张小明 2026/1/3 3:06:21 网站建设

作文网站源码wordpress更换主题方法

LLM智能合同法律风险分析与自动化审查实战指南 【免费下载链接】llm Access large language models from the command-line 项目地址: https://gitcode.com/gh_mirrors/llm/llm 你是否还在为智能合同条款审查耗时费力而困扰?是否在法律风险识别中缺乏系统化分…

张小明 2025/12/26 23:40:07 网站建设

爱网站黄电商平台网站大全

大规模并行处理器程序设计的终极指南:从理论到实践 【免费下载链接】大规模并行处理器程序设计资源介绍 《大规模并行处理器程序设计》是一本深入浅出的并行程序设计书籍,全面系统地介绍了并行程序设计与GPU体系结构的基本概念。本书详细探讨了用于构建并…

张小明 2025/12/26 20:20:43 网站建设

海纳企业网站建设模板微网站制作超链接

FaceFusion开源项目升级:高精度人脸替换新体验在短视频与虚拟内容爆发的时代,人们对于“换脸”的期待早已超越了早期的娱乐恶搞。如今,无论是影视制作中的角色复现、在线教育里的多语言口型同步,还是虚拟主播的形象定制&#xff0…

张小明 2025/12/26 21:50:11 网站建设