标签频道
接口自动化
该标签下的文章、提问与讨论帖。
背景 我做了 8 年测试开发,从单体到微服务、从 Python 到 Java,带过的自动化接口用例从几百条到上万条。有一件事我至今没找到"标准答案":接口自动化用例里,下游依赖(RPC / HTTP / MQ / DB)到底该 mock 到
现象或背景 在接口自动化测试中,时间依赖是最难处理的隐式全局依赖之一。我负责的结算/账务链路接口套件包含 300 条用例,其中 40 条强依赖「真实时间」: - 订单 T+1 才允许发起结算(12 条)、优惠券次日 00:00 生效(9 条
【背景】 3 年测试开发,负责一条 B 端 SaaS 的订单 + 支付链路(Java 17 + Spring Boot 3.2 + MySQL 8.0.34),接口自动化 pytest 7.4 + httpx 约 900 条用例,跑在 5
背景 做了 3 年接口自动化(pytest + httpx,约 2000 条用例,跑在多人共享的 staging 上)。其中约 15% 的用例涉及异步链路:提交任务 → 后台 worker 处理 → 查询状态接口返回终态(SUCCESS /
【背景】 3 年测试开发,负责一条 B 端 SaaS 的订单 + 支付链路(Java 17 + Spring Boot 3.2 + MySQL 8.0.34),接口自动化 pytest 7.4 + httpx 约 900 条用例,跑在 5
«结论先行:接口自动化失败后最贵的是「现场消失」,不是「用例红了」。环境是共享的、数据是流动的、日志是滚动覆盖的——失败发生后的前 30 秒,是证据还完整的唯一窗口。把「事后复现」改成「当时保全」,排障时间能从平均 40 分钟压到 4 分钟
«结论先行:跨进程接口测试里的时间依赖,靠"mock 时钟"是够不着的——mock 只能替换本进程内的时钟调用,替换不了对端服务里的 "time.time()"。真正可落地的做法是把「业务时间」提升为接口契约的一部分:测试侧用请求头注入 "
【背景】 我维护一条 B 端 SaaS 的接口自动化:Python 3.11 + pytest 7.4 + httpx,用例 1800+ 条,跑在 4 人共享的 staging 上(MySQL 8 + Redis 7 + 1 个 Kafka
背景 我做了 8 年测试开发,从单体到微服务、从 Python 到 Java,带过的自动化接口用例从几百条到上万条。有一件事我至今没找到"标准答案":接口自动化用例里,下游依赖(RPC / HTTP / MQ / DB)到底该 mock 到
背景 我负责一条结算/账务链路的接口自动化(Python + pytest,约 300 条用例,MySQL 8.0)。其中约 40 条用例的业务逻辑强依赖「真实时间」:典型如「订单 T+1 才允许发起结算」「优惠券次日 00:00 后生效」
背景 做了 3 年接口自动化(pytest + httpx,约 2000 条用例,跑在多人共享的 staging 上)。其中约 15% 的用例涉及异步链路:提交任务 → 后台 worker 处理 → 查询状态接口返回终态(SUCCESS /
先讲个我亲历的"血案":某次回归,一条自动化造了 2 万条订单流水,测试库和生产库共用同一个主从集群(当时为了省事),造数那条事务因为断言失败中途没回滚,结果从库上的报表任务直接把这 2 万条"假订单"算进了当天的 GMV 大盘,值班同学对
背景 我是测试开发,维护一套 B 端 SaaS 接口自动化(Python 3.11 + pytest 7.4 + httpx,约 1800 条用例,跑在 4 人共享的 staging + MySQL 8 + Redis 7)。套件从 700
一、现象与背景:单跑全绿,一上并发就穿帮 先给数字。我们一条订单取消链路,接口自动化里有 46 个串行用例,CI 上常年 100% 通过。但 2024 年 Q4 一次线上灰度,同一订单号在 200ms 内被两个网关节点同时调到「取消」接口,
背景:我负责一条 B 端 SaaS 的接口自动化(Python 3.11 + pytest 7.4 + httpx,约 900 条用例),后端 Spring Boot 3 + MySQL 8 + Redis 7,跑在 4 人共享的 stag
背景 做了 5 年测试开发,最近盘一套 B 端 SaaS 的接口自动化(Python 3.11 + pytest 7 + httpx,约 800 条用例),一个反复出现的痛点不是「断言写错」,而是「断言写多严」的尺度问题。举几个真实例子:一
【背景】 我负责一条 B 端 SaaS 的接口自动化(Python 3.11 + pytest 7.4 + httpx,约 600 条用例),后端 Spring Boot 3 + RabbitMQ 3.12 + MySQL 8。核心链路是「
【背景】我负责一套 B 端 SaaS 的接口自动化(Python 3.11 + pytest 7.4 + httpx,约 700 条用例,MySQL 8)。里面有一批"老用例"是 2 年前从手工用例平移过来的,它们的共同特征是不自己造数,而
背景 我在一家 B 端 SaaS 团队负责接口自动化(Python 3.11 + pytest 7.4 + httpx 0.25,约 800 条用例),后端 Spring Boot 3 + MySQL 8 + Redis 7 + Rocke
背景:我维护一套 B 端 SaaS 的接口自动化(Python 3.11 + pytest 7 + httpx,约 400 条用例),后端 Java + Spring Boot。很多用例的造数不是"一步到位",而是一条 5~6 步的依赖链,
已经到底了
文
标题
摘要