1、罗曼群核科技-测试开发专家罗曼群核科技 测试开发专家先后就职于新浪、51信用卡、群核科技等杭州群核科技平台测试组负责人杭州群核科技自动化小组负责人目录CONTENTS 群核科技接口自动化建设与挑战0102流量录制回放的尝试 自动化平台能力提升策略03收益总结与未来展望04PART 01群核科技接口自动化建设与挑战单体服务垂直架构soa架构微服务优点1.架构简单2.易于测试3.易于部署4.初期迭代迅速1.方便水平扩展,负载均衡,解决了并发问题2.系统间相互独立,互补影响3.模块可以各自进行优化1.分布式2.松耦合3.灵活扩展4.可复用5.基于rpc框架,向接的远程法调1.单一职责2.解耦3.复用
2、性高4.可维护性高5.restful轻量级通信缺点1.中心化2.耦合度高1.服务之间调式不统,基于 httpclient、webservice,接协议不统2.服务端口或者ip发生变化时,需要调用方同步修改3.负载均衡比较复杂,有借助于硬件的负载均衡F5,成本高1.服务抽象粒度大2.服务调用方与提供方耦合度高1.服务拆分很细2.维护成本高根据Verified Market Research 的 2024 年报告,超过85%的新企业应用采用微服务架构结合容器化和自动扩展技术,可显著降低云服务成本 服务粒度细化中台化群核科技日常迭代服务约600个,其中核心服务约150每个服务少则几十,多则几百的接口
3、数代码改动如何保障测试质量,减少漏测?1回归测试如何保证效率?支付中台、方案中台、渲染中台、多语言中台、UIC中台、户型中台、权限权益中台、商品中台.2beforeApolloTestclearDataBaseprepareDataBaserunHttpTestcheckResultclearDataBaseafterApolloTest对比项本地代码可视化平台编写成本编写成本高简单接口编写成本低对人员能力需要代码能力不需要代码能力结果查看和统计间接转化为html报告统计更清晰维护更新成本维护成本偏高维护成本降低运行和调度依赖任务调度任务调度自我集成可拓展性长期能力局限性大数据沉淀、平台打通,
4、潜力大平台化的优势调试运行迁移脚本导入本地JAVA工程搭建接口测试平台01case依赖于人为手工添加,及时性不高,各种异常场景覆盖不足0204case覆盖不足断言质量不好运行稳定性差断言书写成本大,往往校验不全。校验多少强依赖测试责任心环境稳定性直接影响接口自动化的稳定性03造数成本高接口请求参数构造成本大PART 02流量录制回放的尝试工具特性Goreplay支持 HTTP 请求的录制和回放,简单易用Diffy支持 HTTP,提供diff能力,可以智能降噪 搭建一套diffy环境有成本,且管理杂乱无章 手动安装,不够便捷不足:不足:命令操作,容易出错优点u基于diffy的智能降噪u全链路校验
5、uGoreplay普适性,回放测试简单u接口自动化查询接口走Kudiffy缺点u不支持写请求回放,只支持查询类请求u做不到跨环境回放u对环境依赖高Kurepeater平台 基于jvm-sandbox-repeater二次开发,框架提供录制、回放、mock等能力,扩展性强。可跨环境回放,读写接口都可回放,对环境依赖低。将自动化(主)和流量回放(辅)都放到CI流程中自动执行,共同检查代码质量。并将测试结果聚合。也可以选择使用其中一种。Kurepeater是否可取代接口自动化?01测试数据来自录制流量,理论上使用的数据更真实,覆盖的场景更全面0203case覆盖不足?断言质量不好?运行稳定性差?对响
6、应全校验,自动比对,校验更全面细致。且无需人为写断言脱离环境限制,子调用全部mock,理论上稳定性更高04造数成本高?测试数据来自录制流量,无造数成本自动化的问题Kurepeater具备的能力01流量设有采样率,无法保证录制到低频接口和corner case行覆盖率低02误报率高因为mock逻辑的引入,使得失败原因变得复杂。误报率同样很高。03安全问题线上录制可能对线上服务造成影响流量设有采样率,无法保证录制到corner case,而其实线上问题往往是corner case引起。流量回放的行覆盖率依赖于流量录制,往往只能覆盖常用接口的正常链路。对代码的