Post on 24-Jun-2020
汽车之家电商架构测试实践
新车电商事业部 王公瑾
个人简介
目录 CONTENTS
测试流程改进与敏捷实践
架构设计原则与测试实践
快速搭建Mock Server
持续集成实践
自动化测试实践
业务高速增长的汽车之家新车电商
汽车之家车商城
汽车之家战略升级,推出“4+1”战略,车商城定位新车电商开放平台
车电商 车金融 车生活
“汽车”
公司
基于数据技术
垂直
公司
基于内容
车媒体
大数据
汽车之家车商城
联接 赋能 共赢
主机厂 综合经销商 金融机构 车生活物流服务商
车商城为用户、主机厂、综合经销商等打造完整的线上交易平台
汽车之家车商城平台核心数据概况
全国覆盖城市
90%
在线售卖商品数
10万+
日均访问用户
120万+
日均有效销售线索
1.5万条+
日均订单数
0.5万条+
注:数据来源:近3个月车商城运营数据
车商城系统架构
测试流程改进与敏捷实践
测试流程慢在哪儿
主导测试流程
主导测试模式及复制
敏捷实践:XP极限编程测试实践
人员配比对比
XP流程测试开发比
正常流程测试开发比
架构设计原则与测试实践
各种名词
架构测试的万能钥匙:压测
很好,但是有些迟了
如何做到测试前置
消息通知类测试举例
处理异步化
了解消息队列中间件的应用
MQ和DB组合应用
分离错误数据
业务数据缓存类测试
了解缓存(以Redis举例)
测试如何参与开发和架构设计
数一数每种面值的硬币有多少枚
架构设计的原则来源于人类思维的延伸
分 拣
计 数
测试参与架构设计(寻求效率和效果的平衡点)
架构指导原则 详细描述
解耦 降低模块间关系的复杂度
高内聚 单一职责,功能内聚和顺序内聚
关注行为分离 小到模块、大到系统,要清楚边界和职责
关注数据分离 系统之间的分离和系统内的分离
横向、纵向分离 模块化和分层
轻重分离 辩证地尽量去做异步设计
禁用设计 通过开关或者配置可以热处理禁用和修改程序功能
灰度发布 可配置的灰度升级
快速搭建Mock Server
Nginx+Lua+Redis快速搭建Mock Server
Nginx+Lua+Redis选型的优点
应用场景 操作步骤 优点描述
新增接口
1)新增Mock接口的Lua脚本1)方便部署,只需要定义location指定脚本位置即可
2)需要对相同接口做数据隔离时,脚本编制方便
3)重启速度快,nginx –s reload秒生效
2)新增nginx配置
3)nginx –s reload
变更接口逻辑
1)修改Mock接口的Lua脚本
2)nginx –s reload
变更接口返回值 1)set对应的Redis的key的值 简单、方便、隔离数据
持续集成实践
持续集成实践
HTTP服务和分布式服务
日志精准定位和集成部署平台
自动化测试实践
自动化测试实践
自动生成接口基础用例
低成本快速生成接口调试应用
测试链路化
测试链路化
北京市海淀区丹棱街3号中国电子大厦B座10层 100080
10th Floor Tower B,CEC Plaza,No.3 Dan Ling Street, Hai Dian District, Beijing 100080,China
Thanks