Raina测试学习指南Raina测试学习指南
导读
面试题
对话式面试题
AI 测试教程
软件测试教程
🌍 知识星球
学习交流群
  • Raina测试工具集
  • Raina常用网站&工具合集
  • 小红书
  • B站
  • 作者介绍
导读
面试题
对话式面试题
AI 测试教程
软件测试教程
🌍 知识星球
学习交流群
  • Raina测试工具集
  • Raina常用网站&工具合集
  • 小红书
  • B站
  • 作者介绍
  • 基础测试对话

    • 测试基础理论
    • 测试用例设计
    • 功能测试
    • 接口测试
    • 自动化测试
    • 性能测试
    • 安全测试
    • 移动端与兼容性测试
    • 测试管理与工程实践
    • 综合与开放题
    • 数据库与数据测试
    • Linux 与测试环境
    • 微服务与分布式系统
    • Web 前端专项
    • DevOps 与 CI/CD
    • 业务领域专项
    • 测试工具与效率
    • 质量度量与测试策略
    • 软技能与职业发展
    • 进阶综合题
    • 网络与 HTTP 协议(高频)
    • SQL 与数据库基础(高频)
    • 自动化落地细节(高频)
    • 缺陷与质量过程(高频)
    • 经典业务 / 场景设计题(高频)
    • Web / App 实战补充(高频)
    • 接口与联调实战(高频)
    • 性能与稳定性补充(高频)
    • 编程与工具基础(高频)
    • 行为面试与综合高频
  • AI 测试对话

    • AI 测试基础与方法论
    • 大模型(LLM)功能测试
    • Prompt 与对话质量测试
    • Agent / Skill / MCP 测试
    • RAG 与知识库测试
    • 评测体系与 Eval
    • 自动化测试与 CI/CD
    • 性能、成本与稳定性
    • 安全、合规与伦理
    • 测试工程实践与职业发展

电商下单流程的核心测试点有哪些?

👔 Raina面试官: 电商下单这条主链路,你觉得核心测试点有哪些?

🙋 候选人:

  • 我会按下单前 → 下单中 → 下单后三段拆,每段都有钱和状态,漏一个都可能资损。
  • 下单前:商品可售状态、库存可见量、价格(含促销价)、地址/配送范围、限购规则。下单中:选规格 SKU、数量边界、优惠券选用、运费计算、订单金额汇总、幂等(重复提交)、并发下单。下单后:订单生成、库存预占/扣减、支付单创建、超时关单、订单详情与列表一致性。
  • 横切关注点:登录态、多端(App/H5/小程序)行为一致、弱网/中断恢复、日志与 trace 能串起 orderId。P0 一定是钱算对 + 库存不错 + 状态可追溯。

👔 Raina面试官: 促销叠加的时候怎么保证测全?

🙋 候选人:

  • 单独拉价格计算矩阵,不和主流程混在一起。
  • 用判定表列出:满减 × 优惠券 × 会员价 × 运费券的合法/非法组合,每条组合断言最终应付金额和优惠明细字段。主流程用典型组合冒烟,矩阵用接口批量回归——手工点 200 种组合不现实。


库存扣减、超卖问题测试怎么设计?

👔 Raina面试官: 库存扣减和超卖是电商经典难题,你怎么设计测试?

🙋 候选人:

  • 核心验证三件事:扣减时机对不对、并发下会不会超卖、异常回滚后库存是否一致。
  • 扣减时机:下单预占 vs 支付后扣减 vs 发货扣减——每种策略测取消订单、支付超时、支付失败时库存是否正确释放。功能用例覆盖单用户正常购买、买超库存、买 0 和负数。并发用 JMeter/Locust 模拟 N 个用户同时抢最后 M 件库存,断言成功订单数 ≤ 库存数,且 DB 库存不为负。
  • 还要测补偿:支付回调重复、消息重复消费、服务重启中途——库存流水表和实际可售量对得上。如果有 Redis 缓存库存,要测缓存与 DB 不一致时的兜底策略。

👔 Raina面试官: 测试环境很难造真实并发,怎么办?

🙋 候选人:

  • 三层手段:接口层压测 + 单元/集成层模拟并发 + 生产灰度观察。
  • 测试环境用压测工具打;开发配合写集成测试用 CountDownLatch 模拟多线程扣减;大促前在预发用影子流量或内部秒杀演练。没有绝对真实,但三层叠加能把超卖风险压到可接受范围。


优惠券、满减、叠加规则测试难点在哪?

👔 Raina面试官: 优惠券、满减、叠加规则这块,测试难点主要在哪?

🙋 候选人:

  • 难点在规则组合爆炸 + 时间窗口 + 状态机复杂,不是单点功能而是数学和策略问题。
  • 组合爆炸:满 300 减 50、店铺券、平台券、会员折扣能不能叠、叠的顺序影响最终价——规则一改就是 N×M 种组合。时间窗口:券有效期、活动开始结束临界点、时区、服务器与客户端时间不一致。状态机:未领取/已领取/已使用/已过期/已作废,以及退款后券是否返还。
  • 测试策略:产品出规则矩阵文档 → 测试转判定表 + 自动化价格断言;临界点用边界值(差 1 分达标、活动最后一秒);异常规则(互斥券同时选)要有明确错误码和前端提示。

👔 Raina面试官: 线上价格和结算页不一致怎么查?

🙋 候选人:

  • 拉算价链路日志:购物车价、优惠分摊、结算页价、支付价四段对比。
  • 常见根因是缓存促销规则过期、前端本地算了优惠价但后端没认、或叠加顺序和文档不一致。测试阶段就要约定每步价格 JSON 字段,方便线上一键 diff。


支付流程(收银台、回调、对账)怎么测?

👔 Raina面试官: 支付流程——收银台、回调、对账,你怎么测?

🙋 候选人:

  • 分三块,每块都有同步路径和异步路径。
  • 收银台:唤起支付、金额与订单一致、支付方式切换、支付中取消、超时。沙箱环境走微信/支付宝测试账号,断言支付单号和商户订单号映射正确。回调:模拟渠道成功/失败/重复回调/乱序回调/签名错误,验证订单状态只迁移一次(幂等)、重复通知不重复发货。对账:构造长短款、掉单、跨日交易,跑对账任务后断言差异报表和补单流程。
  • 横切:金额精度(分)、币种、合单支付、部分支付。P0 是回调幂等和状态机——钱收了订单还待支付,或者没收钱订单变已支付,都是 P0 事故。

👔 Raina面试官: 真实支付渠道测试环境不好搞怎么办?

🙋 候选人:

  • 用渠道沙箱 + Mock 网关 + 录制回放组合。
  • 日常回归 Mock 回调报文跑状态机;发版前在沙箱走真支付小额单;对账逻辑用构造好的账单文件做离线验证。关键是 Mock 报文要和生产文档一致,别测了个假协议。


退款、部分退款、原路退回场景如何覆盖?

👔 Raina面试官: 退款这块——全额退、部分退、原路退回,你怎么覆盖?

🙋 候选人:

  • 按退款类型 × 订单状态 × 支付渠道建矩阵,重点测资金和状态双一致。
  • 全额退:未发货仅退款、已发货退货退款、超时自动退。部分退:多商品订单退其中一件,断言退款金额、优惠分摊、运费处理、剩余商品仍可正常履约。原路退回:微信/支付宝/银行卡各走一遍沙箱,验证退款单号、到账时间字段、重复退款拦截。
  • 异常:退款中用户又下单、退款失败重试、渠道返回 processing 中间态、已结算订单退款。每笔退款后订单状态、库存回滚(若适用)、优惠券返还规则都要断言。

👔 Raina面试官: 部分退款的优惠分摊怎么验?

🙋 候选人:

  • 要产品给分摊公式,测试用固定数据集手算期望值。
  • 比如满减按商品实付比例摊,退一件后剩余商品不应享受已失效的满减档——这种最容易算错。接口返回里要有 promotion_detail 字段,自动化直接 diff 手算结果。


订单状态机常见的状态和流转测试怎么设计?

👔 Raina面试官: 订单状态机常见有哪些状态?流转测试你怎么设计?

🙋 候选人:

  • 常见状态:待支付 → 待发货 → 已发货 → 已完成,旁路有已取消、退款中、已关闭、售后中。
  • 测试用状态迁移表:列出合法迁移(待支付+支付成功→待发货)和非法迁移(待支付+发货→应拒绝)。每个迁移触发事件要明确——用户操作、支付回调、超时任务、客服介入。
  • 重点场景:支付超时关单、发货前取消、发货后仅退款 vs 退货退款、确认收货超时自动完成、售后完结后状态。并发:支付回调和用户取消同时到达,最终状态唯一且符合业务优先级规则。

👔 Raina面试官: 状态机测试用例会不会爆炸?

🙋 候选人:

  • 会,所以分 P0 主路径 + P1 异常边 + 探索性补洞。
  • P0 覆盖 happy path 和最高资损路径(重复支付、错误取消);P1 覆盖售后各分支;用接口直接打状态迁移 API 比纯 UI 快很多。状态非法迁移要有统一错误码,方便自动化断言。

最近更新: 2026/8/21 08:07
Contributors: weixin_55062269
Prev
性能测试
Next
移动端与兼容性测试