WWW.YOUINFO.SITE
标签聚合 测试

/tag/测试

LinuxDo 最新话题 · 2026-06-12 09:49:34+08:00 · tech

让 ai 写测试总是会出现这些问题: 1、错误的断言数据,比如会猜测某个字段的实际情况去错误断言,基于这个错误断言写出来的逻辑也会错误,从而出现:测试 ok,正式运行寄了 2、懒惰不堪,测试用例懒得写,覆盖不完整,想的不够边界 3、瞎几把测试无用的逻辑或断言,浪费 Token 写出一些没必要的测试,如测试常量返回(我都写常量了你测个 damn,改个常量值测试也得崩),也就是不去测真正的业务逻辑 4、部分情况会出现在测试中复写业务逻辑,而不是进行导入使用(天啊,到时候业务改一下,测试一直不过,留个坑在那) 基于以上发现,我让 ai 给的提示词规则为: # AI 测试编写约束规则 ## 1. 断言数据准则 - **禁止猜测数据**:不确定的字段值必须先读取代码确认,或明确标注 - **使用真实数据源**:优先从代码中提取常量、类型定义、实际返回值 - **验证而非假设**:对不确定的业务逻辑,先问用户确认预期行为 ## 2. 覆盖率要求 必须覆盖: - **边界条件**:空值、null、undefined、空数组/对象、极值 - **错误路径**:异常抛出、错误返回、失败分支 - **核心业务分支**:if/else、switch 的主要路径 禁止遗漏: - 必须至少包含 1 个成功用例 + 1 个失败/边界用例 - 对于有明显分支的函数(如有 3+ 个 if),需覆盖每个分支 ## 3. 避免无效测试 **不要测试的内容**: - 常量的值(`const MAX = 100` 不需要测 `expect(MAX).toBe(100)`) - 第三方库的行为(除非是 mock 验证) - 纯类型定义(TypeScript 类型检查已覆盖) - getter/setter 无逻辑的直接赋值取值 **应该测试的内容**: - 包含计算、转换、判断的业务逻辑 - 数据处理流程(输入 → 处理 → 输出) - 副作用:API 调用、数据库操作、状态变更(通过 mock 验证) ## 4. 复用业务代码 - **绝对禁止**:在测试中重写业务逻辑实现 - **必须导入**:直接 import 被测函数、工具函数、常量 不知道各位有没有更好的 rule 和相关处理方案呢 1 个帖子 - 1 位参与者 阅读完整话题

cnBeta全文版 · 2026-06-11 23:05:36+08:00 · tech

美国加利福尼亚州正在测试一种被称为“智能高速公路”的新型交通管控系统,有可能让部分司机在上高速前被红绿灯拦在匝道上长达四分钟,但交通部门认为,这将有助于缓解主线拥堵、缩短整体通勤时间。 本月 1 日,河滨县交通委员会(Riverside County Transportation Commission)在 15 号州际公路北向、特曼古拉(Temecula)路段启用了一段约 8 英里长的智能高速试点路段。 据报道,当地三处匝道——Temecula Parkway、Rancho California Road 和 Winchester Road——已接入一套新的匝道信号灯控制系统,由算法统一调度车辆何时获准进入主线车流。 与传统采用固定短周期放行的匝道信号不同,这套系统根据实时交通状况动态决定放行频率,因此单辆车在红灯前等待的时间可能会被大幅拉长,一些司机甚至可能要等上四分钟或更久才能并入高速公路。 尽管等待时间明显延长,交通官员认为,通过在入口处“限流”,可以减轻主线上频繁的起步、制动和排队现象,从而改善整体车流效率,让司机在整段路上的总耗时反而少于传统匝道信号方案。 这一试点项目耗资约 3300 万美元,计划运行两年。 河滨县交通委员会发言人大卫·克努森(David Knudsen)表示,如果试点取得成功,该系统将推广到县内其他路段,未来也可能部署到加州其他堵点路段。 他强调,相比于投入巨资拓宽车道,利用智能控制提高既有路网的运行效率,是更为经济可行的选择。 特曼古拉与穆列塔(Murrieta)之间的这段高速路段长期以拥堵著称:在没有车流干扰的理想条件下,通行时间大约只需 10 分钟,但在下午出行高峰,司机往往需要 25 至 45 分钟才能通过。 当地希望通过更精细的匝道管理,在不大规模扩建道路的前提下,缓解这一“瓶颈”路段的通勤压力。 针对外界对“由人工智能控制潜在危险系统”的担忧,克努森专门澄清,这套智能高速系统并非由通用意义上的人工智能驱动。 系统依托铺设在路面的高级传感器实时监测车流速度、流量等数据,再根据预设逻辑进行调节,而不是由具备自主学习和决策能力的 AI 来控制。 他表示,多处匝道之间实现协调控制,是为了在高速主线上形成更加平稳、连贯的车流。 事实上,智能高速并非加州首创。 早在 2020 年,澳大利亚就已在部分路段部署类似技术;美国科罗拉多州丹佛市的 25 号州际公路等多条高速,也已引入相关系统。 当地公布的数据颇为亮眼:在澳大利亚相应路段,通行时间缩短了约 35% 至 65%;丹佛的高速路段则实现了约 20% 的通行时间下降。 在支持者看来,如果加州此次试点能复制澳大利亚和丹佛的改善效果,哪怕司机在匝道前多等几分钟,只要整体出行时间显著缩短,智能高速就算是“划算”的买卖。 不过,在实际运行中,如何在效率提升与公众体验之间取得平衡,仍有待这项为期两年的试点给出答案。 查看评论

LinuxDo 最新话题 · 2026-06-11 18:29:37+08:00 · tech

bilibili.com 「实测」怒砸800大洋!测试Claude“神话”Fable 5 模型,4个任务把额度干爆了..._哔哩哔哩_bilibili 个人博客:https://www.laogou717.com最低价解锁 GPT-5、Claude 、Midjourney、Runway、Netflix等会员服务:https://nf.video/RnmdW 优惠码:laogou, 视频播放量 103616、弹幕量 291、点赞数 2964、投硬币枚数 889、收藏人数 1277、转发人数 2599, 视频作者 神烦老狗, 作者简介 合作VX 备注产品名: LAOGOU717,相关视频:Claude Fable 5 首发实测,真是太烧了。。完爆... 看了b站神烦老狗的视频。手搓mc毫无违和 之前也是这个博主测的 opus4.8 做个马里奥都费劲 第一次有了用cc的冲动 10 个帖子 - 7 位参与者 阅读完整话题

V2EX - 技术 · 2026-06-11 14:40:35+08:00 · tech

主流的"测试" vs 我的"6 阶段" 很多团队的测试流程是 3 段式: UT → 集成 → 上线 每阶段都做"测试"——只是测试对象不同。 我的判断不一样: ▌ 测试不是"测一遍"—— ▌ 是按 6 个阶段性质拆分, ▌ 每阶段有"该阶段独有、其他阶段无法替代"的验证内容。 不是 6 次相同动作 —— 是 6 类不同性质的验证 。 6 阶段是什么 ┌──────────────────────────────────────────────────────────┐ │ │ │ ① 单元测试 ── 验证"函数内部" │ │ ↓ │ │ ② 集成测试 ── 验证"跨网络" │ │ ↓ ← 比对工具进场 │ │ ③ Code Review ─ 验证"设计 + 性能" │ │ ↓ │ │ ④ 他测 ────── 验证"用户视角" │ │ ↓ ← 比对工具回访 │ │ ⑤ 灰度 ────── 验证"生产数据兼容" │ │ ↓ ← 比对工具在线 │ │ ⑥ 上线观察 ── 验证"业务大盘波动" │ │ │ └──────────────────────────────────────────────────────────┘ 每阶段独有验证内容: 阶段 性质 独有验证 ① 单元 函数内部 UT 覆盖率 + 冒烟 + 功能埋点 ② 集成 跨网络 跨服务冒烟 + DML 比对 ③ Review 设计性能 设计审查 + 性能分析 + 回滚方案 ④ 他测 用户视角 提测文档 + Test Case + 修复后再比对 ⑤ 灰度 生产数据 时间窗口 + 分工 + DML 在线比对 ⑥ 上线 业务大盘 6 项指标 + 四方确认 → 第 ②④⑤ 阶段的"比对"动作,就是上一篇讲的"比对工具体系"。 → 第 ⑥ 阶段是大多数团队最常省的——本文重点讲它。 阶段拆分的核心标准 我自己的判断标准很简单: 两个阶段如果验证内容重叠 —— 说明阶段拆分错了。 举个例子:很多团队把"集成测试"和"他测"混在一起做—— 都让测试同事跑一遍。 但这两个阶段性质完全不同: 集成测试是 "跨网络"性质 —— 关心服务调用、数据穿透是否对 他测是 "用户视角"性质 —— 关心 case 覆盖、修复后再验证是否对 合在一起做的代价: 集成阶段没暴露的跨服务 bug,会被他测的"用户场景"掩盖 —— 等到灰度才发现,代价是集成阶段的 N 倍。 第 6 阶段最贵 —— 也最被忽视 很多团队的"上线观察"=刷一下监控大盘。 我的版本: 6 项指标 + 四方确认 。 6 项观测指标: 1. 产品功能有没有执行 2. 数据有没有问题 3. 系统有没有性能问题 4. 跨系统交互有没有影响 5. 财务大盘是否波动 ← 关键! 6. 业务大盘是否波动 ← 关键! ▌ 把"财务大盘 / 业务大盘波动" ▌ 作为发布观察指标 —— ▌ 这是大多数团队最常省的一步。 因为这两项指标"看起来不归技术管"。 但实际上 —— 80% 的"上线后才发现"的事故,在前 4 项指标 里全是绿的,只有第 5 、6 项暴露异常 。 例子: 某次上线某个改动,前 4 项指标全绿; 3 天后才发现财务对账差异—— 这种 bug 在 UT/集成/灰度 都看不出来 ,只有"业务大盘"能看见。 四方确认 —— 不是签字流程 四方确认 = 开发 / 测试 / 技术 TO / 产品 都同意才能"上线观察通过"。 听起来像 PPT 流程,但 反共识在于 : ▌ 测试同意 ≠ 验收通过 —— ▌ 业务大盘没波动,不代表产品认为"功能符合预期"。 ▌ 产品同意 ≠ 验收通过 —— ▌ 数据正常,不代表开发认为"性能达标"。 四方共同确认—— 任何一方说"我看到的不对"——就回退 。 我经历的项目里,真发生过 "3 方都过了,产品最后说不对" 的情况。如果没有四方流程,这个回退根本走不动。 反共识在哪 主流:测试 = UT + 集成 + 上线(3 阶段) 我的版本:6 阶段,每阶段独有验证 主流:每阶段都做"测试"动作 我的版本:每阶段对应 该阶段性质独有 的验证手段 主流:上线观察看"是否有大故障" 我的版本: 6 项观测指标 + 四方确认 主流:业务大盘归运营管 我的版本: 把"财务大盘 / 业务大盘"作为发布观察指标 主流:验收 = 测试通过 我的版本: 四方确认 (开发 / 测试 / 技术 TO / 产品) 什么时候不该用这套 也踩过坑。 某次内部小工具改动,代码量不到 200 行。 我也想搞 6 阶段——leader 直接说:"过度。" 事后是对的。 我的判断: 核心业务系统改造 → 必上(尤其涉及财务 / 业务大盘) 跨多研发角色的项目 → 必上(否则四方确认走不通) 内部工具 / 后台脚本 → 别上(单人项目,4 阶段够) DDL 类无法灰度的改动 → 跳过第 5 阶段(灰度),其余照走 不影响 KPI 的小项目 → 简化为 3 阶段(UT+集成+上线) 阴面 · 这套也有副作用 我自己用了这套 4 年,踩过的坑: 重型流程 —— 小项目用不上,6 阶段成本太高 跨公司不通用 —— 没有"四方确认 / 业务大盘"概念的公司套不进来 可能流于形式 —— 团队成员把 6 阶段当 6 个 checkbox 而非 6 类性质 决策慢 —— 至少 6 次评审 / 检查 最后一条最关键 —— **6 阶段的代价是"决策周期变长"**。 所以才有上面那句:"小项目别上 / 不影响 KPI 的项目简化为 3 阶段"。 写在最后 把测试拆 6 阶段,不是为了"显得专业"—— 是因为我经历过太多次: "你那阶段不是测过吗?怎么还出问题?" 仔细看,会发现: 那阶段测的不是这一类问题 。 每阶段性质不同 —— 验证手段就该不同。 6 阶段是"性质拆分",不是"动作拆分"。 跟"渐进式改造"和"比对工具"一样,这是一套 关心可逆性、关心 追溯性 的工程纪律。 写到这,我也不太确定 6 阶段对所有团队都成立。 我经历的项目都是"核心业务系统 + 跨多角色 + 业务大盘敏感"—— 这种场景 6 阶段几乎是必修。 但创业团队 / 内部工具 / 没有"业务大盘"这个概念的公司—— 搞这套可能反而是负担。 这点我自己也还在想。 下一篇打算写 17 类业务迁移分类—— 跟 6 阶段是一对:6 阶段是 纵向 (时间),17 类是 横向 (业务域)。 两者合起来才是完整的迁移管理体系。 (以上 SOP 都做了脱敏。 如果你做过核心系统改造,欢迎评论区聊聊你们的验收流程长什么样, 特别想听 6 阶段简化为 3 阶段后,踩过的坑 。)

V2EX - 技术 · 2026-06-11 13:40:35+08:00 · tech

主流的"测试" vs 我的"6 阶段" 很多团队的测试流程是 3 段式: UT → 集成 → 上线 每阶段都做"测试"——只是测试对象不同。 我的判断不一样: ▌ 测试不是"测一遍"—— ▌ 是按 6 个阶段性质拆分, ▌ 每阶段有"该阶段独有、其他阶段无法替代"的验证内容。 不是 6 次相同动作 —— 是 6 类不同性质的验证 。 6 阶段是什么 ┌──────────────────────────────────────────────────────────┐ │ │ │ ① 单元测试 ── 验证"函数内部" │ │ ↓ │ │ ② 集成测试 ── 验证"跨网络" │ │ ↓ ← 比对工具进场 │ │ ③ Code Review ─ 验证"设计 + 性能" │ │ ↓ │ │ ④ 他测 ────── 验证"用户视角" │ │ ↓ ← 比对工具回访 │ │ ⑤ 灰度 ────── 验证"生产数据兼容" │ │ ↓ ← 比对工具在线 │ │ ⑥ 上线观察 ── 验证"业务大盘波动" │ │ │ └──────────────────────────────────────────────────────────┘ 每阶段独有验证内容: 阶段 性质 独有验证 ① 单元 函数内部 UT 覆盖率 + 冒烟 + 功能埋点 ② 集成 跨网络 跨服务冒烟 + DML 比对 ③ Review 设计性能 设计审查 + 性能分析 + 回滚方案 ④ 他测 用户视角 提测文档 + Test Case + 修复后再比对 ⑤ 灰度 生产数据 时间窗口 + 分工 + DML 在线比对 ⑥ 上线 业务大盘 6 项指标 + 四方确认 → 第 ②④⑤ 阶段的"比对"动作,就是上一篇讲的"比对工具体系"。 → 第 ⑥ 阶段是大多数团队最常省的——本文重点讲它。 阶段拆分的核心标准 我自己的判断标准很简单: 两个阶段如果验证内容重叠 —— 说明阶段拆分错了。 举个例子:很多团队把"集成测试"和"他测"混在一起做—— 都让测试同事跑一遍。 但这两个阶段性质完全不同: 集成测试是 "跨网络"性质 —— 关心服务调用、数据穿透是否对 他测是 "用户视角"性质 —— 关心 case 覆盖、修复后再验证是否对 合在一起做的代价: 集成阶段没暴露的跨服务 bug,会被他测的"用户场景"掩盖 —— 等到灰度才发现,代价是集成阶段的 N 倍。 第 6 阶段最贵 —— 也最被忽视 很多团队的"上线观察"=刷一下监控大盘。 我的版本: 6 项指标 + 四方确认 。 6 项观测指标: 1. 产品功能有没有执行 2. 数据有没有问题 3. 系统有没有性能问题 4. 跨系统交互有没有影响 5. 财务大盘是否波动 ← 关键! 6. 业务大盘是否波动 ← 关键! ▌ 把"财务大盘 / 业务大盘波动" ▌ 作为发布观察指标 —— ▌ 这是大多数团队最常省的一步。 因为这两项指标"看起来不归技术管"。 但实际上 —— 80% 的"上线后才发现"的事故,在前 4 项指标 里全是绿的,只有第 5 、6 项暴露异常 。 例子: 某次上线某个改动,前 4 项指标全绿; 3 天后才发现财务对账差异—— 这种 bug 在 UT/集成/灰度 都看不出来 ,只有"业务大盘"能看见。 四方确认 —— 不是签字流程 四方确认 = 开发 / 测试 / 技术 TO / 产品 都同意才能"上线观察通过"。 听起来像 PPT 流程,但 反共识在于 : ▌ 测试同意 ≠ 验收通过 —— ▌ 业务大盘没波动,不代表产品认为"功能符合预期"。 ▌ 产品同意 ≠ 验收通过 —— ▌ 数据正常,不代表开发认为"性能达标"。 四方共同确认—— 任何一方说"我看到的不对"——就回退 。 我经历的项目里,真发生过 "3 方都过了,产品最后说不对" 的情况。如果没有四方流程,这个回退根本走不动。 反共识在哪 主流:测试 = UT + 集成 + 上线(3 阶段) 我的版本:6 阶段,每阶段独有验证 主流:每阶段都做"测试"动作 我的版本:每阶段对应 该阶段性质独有 的验证手段 主流:上线观察看"是否有大故障" 我的版本: 6 项观测指标 + 四方确认 主流:业务大盘归运营管 我的版本: 把"财务大盘 / 业务大盘"作为发布观察指标 主流:验收 = 测试通过 我的版本: 四方确认 (开发 / 测试 / 技术 TO / 产品) 什么时候不该用这套 也踩过坑。 某次内部小工具改动,代码量不到 200 行。 我也想搞 6 阶段——leader 直接说:"过度。" 事后是对的。 我的判断: 核心业务系统改造 → 必上(尤其涉及财务 / 业务大盘) 跨多研发角色的项目 → 必上(否则四方确认走不通) 内部工具 / 后台脚本 → 别上(单人项目,4 阶段够) DDL 类无法灰度的改动 → 跳过第 5 阶段(灰度),其余照走 不影响 KPI 的小项目 → 简化为 3 阶段(UT+集成+上线) 阴面 · 这套也有副作用 我自己用了这套 4 年,踩过的坑: 重型流程 —— 小项目用不上,6 阶段成本太高 跨公司不通用 —— 没有"四方确认 / 业务大盘"概念的公司套不进来 可能流于形式 —— 团队成员把 6 阶段当 6 个 checkbox 而非 6 类性质 决策慢 —— 至少 6 次评审 / 检查 最后一条最关键 —— **6 阶段的代价是"决策周期变长"**。 所以才有上面那句:"小项目别上 / 不影响 KPI 的项目简化为 3 阶段"。 写在最后 把测试拆 6 阶段,不是为了"显得专业"—— 是因为我经历过太多次: "你那阶段不是测过吗?怎么还出问题?" 仔细看,会发现: 那阶段测的不是这一类问题 。 每阶段性质不同 —— 验证手段就该不同。 6 阶段是"性质拆分",不是"动作拆分"。 跟"渐进式改造"和"比对工具"一样,这是一套 关心可逆性、关心 追溯性 的工程纪律。 写到这,我也不太确定 6 阶段对所有团队都成立。 我经历的项目都是"核心业务系统 + 跨多角色 + 业务大盘敏感"—— 这种场景 6 阶段几乎是必修。 但创业团队 / 内部工具 / 没有"业务大盘"这个概念的公司—— 搞这套可能反而是负担。 这点我自己也还在想。 下一篇打算写 17 类业务迁移分类—— 跟 6 阶段是一对:6 阶段是 纵向 (时间),17 类是 横向 (业务域)。 两者合起来才是完整的迁移管理体系。 (以上 SOP 都做了脱敏。 如果你做过核心系统改造,欢迎评论区聊聊你们的验收流程长什么样, 特别想听 6 阶段简化为 3 阶段后,踩过的坑 。)

V2EX - 技术 · 2026-06-11 13:40:35+08:00 · tech

主流的"测试" vs 我的"6 阶段" 很多团队的测试流程是 3 段式: UT → 集成 → 上线 每阶段都做"测试"——只是测试对象不同。 我的判断不一样: ▌ 测试不是"测一遍"—— ▌ 是按 6 个阶段性质拆分, ▌ 每阶段有"该阶段独有、其他阶段无法替代"的验证内容。 不是 6 次相同动作 —— 是 6 类不同性质的验证 。 6 阶段是什么 ┌──────────────────────────────────────────────────────────┐ │ │ │ ① 单元测试 ── 验证"函数内部" │ │ ↓ │ │ ② 集成测试 ── 验证"跨网络" │ │ ↓ ← 比对工具进场 │ │ ③ Code Review ─ 验证"设计 + 性能" │ │ ↓ │ │ ④ 他测 ────── 验证"用户视角" │ │ ↓ ← 比对工具回访 │ │ ⑤ 灰度 ────── 验证"生产数据兼容" │ │ ↓ ← 比对工具在线 │ │ ⑥ 上线观察 ── 验证"业务大盘波动" │ │ │ └──────────────────────────────────────────────────────────┘ 每阶段独有验证内容: 阶段 性质 独有验证 ① 单元 函数内部 UT 覆盖率 + 冒烟 + 功能埋点 ② 集成 跨网络 跨服务冒烟 + DML 比对 ③ Review 设计性能 设计审查 + 性能分析 + 回滚方案 ④ 他测 用户视角 提测文档 + Test Case + 修复后再比对 ⑤ 灰度 生产数据 时间窗口 + 分工 + DML 在线比对 ⑥ 上线 业务大盘 6 项指标 + 四方确认 → 第 ②④⑤ 阶段的"比对"动作,就是上一篇讲的"比对工具体系"。 → 第 ⑥ 阶段是大多数团队最常省的——本文重点讲它。 阶段拆分的核心标准 我自己的判断标准很简单: 两个阶段如果验证内容重叠 —— 说明阶段拆分错了。 举个例子:很多团队把"集成测试"和"他测"混在一起做—— 都让测试同事跑一遍。 但这两个阶段性质完全不同: 集成测试是 "跨网络"性质 —— 关心服务调用、数据穿透是否对 他测是 "用户视角"性质 —— 关心 case 覆盖、修复后再验证是否对 合在一起做的代价: 集成阶段没暴露的跨服务 bug,会被他测的"用户场景"掩盖 —— 等到灰度才发现,代价是集成阶段的 N 倍。 第 6 阶段最贵 —— 也最被忽视 很多团队的"上线观察"=刷一下监控大盘。 我的版本: 6 项指标 + 四方确认 。 6 项观测指标: 1. 产品功能有没有执行 2. 数据有没有问题 3. 系统有没有性能问题 4. 跨系统交互有没有影响 5. 财务大盘是否波动 ← 关键! 6. 业务大盘是否波动 ← 关键! ▌ 把"财务大盘 / 业务大盘波动" ▌ 作为发布观察指标 —— ▌ 这是大多数团队最常省的一步。 因为这两项指标"看起来不归技术管"。 但实际上 —— 80% 的"上线后才发现"的事故,在前 4 项指标 里全是绿的,只有第 5 、6 项暴露异常 。 例子: 某次上线某个改动,前 4 项指标全绿; 3 天后才发现财务对账差异—— 这种 bug 在 UT/集成/灰度 都看不出来 ,只有"业务大盘"能看见。 四方确认 —— 不是签字流程 四方确认 = 开发 / 测试 / 技术 TO / 产品 都同意才能"上线观察通过"。 听起来像 PPT 流程,但 反共识在于 : ▌ 测试同意 ≠ 验收通过 —— ▌ 业务大盘没波动,不代表产品认为"功能符合预期"。 ▌ 产品同意 ≠ 验收通过 —— ▌ 数据正常,不代表开发认为"性能达标"。 四方共同确认—— 任何一方说"我看到的不对"——就回退 。 我经历的项目里,真发生过 "3 方都过了,产品最后说不对" 的情况。如果没有四方流程,这个回退根本走不动。 反共识在哪 主流:测试 = UT + 集成 + 上线(3 阶段) 我的版本:6 阶段,每阶段独有验证 主流:每阶段都做"测试"动作 我的版本:每阶段对应 该阶段性质独有 的验证手段 主流:上线观察看"是否有大故障" 我的版本: 6 项观测指标 + 四方确认 主流:业务大盘归运营管 我的版本: 把"财务大盘 / 业务大盘"作为发布观察指标 主流:验收 = 测试通过 我的版本: 四方确认 (开发 / 测试 / 技术 TO / 产品) 什么时候不该用这套 也踩过坑。 某次内部小工具改动,代码量不到 200 行。 我也想搞 6 阶段——leader 直接说:"过度。" 事后是对的。 我的判断: 核心业务系统改造 → 必上(尤其涉及财务 / 业务大盘) 跨多研发角色的项目 → 必上(否则四方确认走不通) 内部工具 / 后台脚本 → 别上(单人项目,4 阶段够) DDL 类无法灰度的改动 → 跳过第 5 阶段(灰度),其余照走 不影响 KPI 的小项目 → 简化为 3 阶段(UT+集成+上线) 阴面 · 这套也有副作用 我自己用了这套 4 年,踩过的坑: 重型流程 —— 小项目用不上,6 阶段成本太高 跨公司不通用 —— 没有"四方确认 / 业务大盘"概念的公司套不进来 可能流于形式 —— 团队成员把 6 阶段当 6 个 checkbox 而非 6 类性质 决策慢 —— 至少 6 次评审 / 检查 最后一条最关键 —— **6 阶段的代价是"决策周期变长"**。 所以才有上面那句:"小项目别上 / 不影响 KPI 的项目简化为 3 阶段"。 写在最后 把测试拆 6 阶段,不是为了"显得专业"—— 是因为我经历过太多次: "你那阶段不是测过吗?怎么还出问题?" 仔细看,会发现: 那阶段测的不是这一类问题 。 每阶段性质不同 —— 验证手段就该不同。 6 阶段是"性质拆分",不是"动作拆分"。 跟"渐进式改造"和"比对工具"一样,这是一套 关心可逆性、关心 追溯性 的工程纪律。 写到这,我也不太确定 6 阶段对所有团队都成立。 我经历的项目都是"核心业务系统 + 跨多角色 + 业务大盘敏感"—— 这种场景 6 阶段几乎是必修。 但创业团队 / 内部工具 / 没有"业务大盘"这个概念的公司—— 搞这套可能反而是负担。 这点我自己也还在想。 下一篇打算写 17 类业务迁移分类—— 跟 6 阶段是一对:6 阶段是 纵向 (时间),17 类是 横向 (业务域)。 两者合起来才是完整的迁移管理体系。 (以上 SOP 都做了脱敏。 如果你做过核心系统改造,欢迎评论区聊聊你们的验收流程长什么样, 特别想听 6 阶段简化为 3 阶段后,踩过的坑 。)

V2EX - 技术 · 2026-06-11 12:40:35+08:00 · tech

主流的"测试" vs 我的"6 阶段" 很多团队的测试流程是 3 段式: UT → 集成 → 上线 每阶段都做"测试"——只是测试对象不同。 我的判断不一样: ▌ 测试不是"测一遍"—— ▌ 是按 6 个阶段性质拆分, ▌ 每阶段有"该阶段独有、其他阶段无法替代"的验证内容。 不是 6 次相同动作 —— 是 6 类不同性质的验证 。 6 阶段是什么 ┌──────────────────────────────────────────────────────────┐ │ │ │ ① 单元测试 ── 验证"函数内部" │ │ ↓ │ │ ② 集成测试 ── 验证"跨网络" │ │ ↓ ← 比对工具进场 │ │ ③ Code Review ─ 验证"设计 + 性能" │ │ ↓ │ │ ④ 他测 ────── 验证"用户视角" │ │ ↓ ← 比对工具回访 │ │ ⑤ 灰度 ────── 验证"生产数据兼容" │ │ ↓ ← 比对工具在线 │ │ ⑥ 上线观察 ── 验证"业务大盘波动" │ │ │ └──────────────────────────────────────────────────────────┘ 每阶段独有验证内容: 阶段 性质 独有验证 ① 单元 函数内部 UT 覆盖率 + 冒烟 + 功能埋点 ② 集成 跨网络 跨服务冒烟 + DML 比对 ③ Review 设计性能 设计审查 + 性能分析 + 回滚方案 ④ 他测 用户视角 提测文档 + Test Case + 修复后再比对 ⑤ 灰度 生产数据 时间窗口 + 分工 + DML 在线比对 ⑥ 上线 业务大盘 6 项指标 + 四方确认 → 第 ②④⑤ 阶段的"比对"动作,就是上一篇讲的"比对工具体系"。 → 第 ⑥ 阶段是大多数团队最常省的——本文重点讲它。 阶段拆分的核心标准 我自己的判断标准很简单: 两个阶段如果验证内容重叠 —— 说明阶段拆分错了。 举个例子:很多团队把"集成测试"和"他测"混在一起做—— 都让测试同事跑一遍。 但这两个阶段性质完全不同: 集成测试是 "跨网络"性质 —— 关心服务调用、数据穿透是否对 他测是 "用户视角"性质 —— 关心 case 覆盖、修复后再验证是否对 合在一起做的代价: 集成阶段没暴露的跨服务 bug,会被他测的"用户场景"掩盖 —— 等到灰度才发现,代价是集成阶段的 N 倍。 第 6 阶段最贵 —— 也最被忽视 很多团队的"上线观察"=刷一下监控大盘。 我的版本: 6 项指标 + 四方确认 。 6 项观测指标: 1. 产品功能有没有执行 2. 数据有没有问题 3. 系统有没有性能问题 4. 跨系统交互有没有影响 5. 财务大盘是否波动 ← 关键! 6. 业务大盘是否波动 ← 关键! ▌ 把"财务大盘 / 业务大盘波动" ▌ 作为发布观察指标 —— ▌ 这是大多数团队最常省的一步。 因为这两项指标"看起来不归技术管"。 但实际上 —— 80% 的"上线后才发现"的事故,在前 4 项指标 里全是绿的,只有第 5 、6 项暴露异常 。 例子: 某次上线某个改动,前 4 项指标全绿; 3 天后才发现财务对账差异—— 这种 bug 在 UT/集成/灰度 都看不出来 ,只有"业务大盘"能看见。 四方确认 —— 不是签字流程 四方确认 = 开发 / 测试 / 技术 TO / 产品 都同意才能"上线观察通过"。 听起来像 PPT 流程,但 反共识在于 : ▌ 测试同意 ≠ 验收通过 —— ▌ 业务大盘没波动,不代表产品认为"功能符合预期"。 ▌ 产品同意 ≠ 验收通过 —— ▌ 数据正常,不代表开发认为"性能达标"。 四方共同确认—— 任何一方说"我看到的不对"——就回退 。 我经历的项目里,真发生过 "3 方都过了,产品最后说不对" 的情况。如果没有四方流程,这个回退根本走不动。 反共识在哪 主流:测试 = UT + 集成 + 上线(3 阶段) 我的版本:6 阶段,每阶段独有验证 主流:每阶段都做"测试"动作 我的版本:每阶段对应 该阶段性质独有 的验证手段 主流:上线观察看"是否有大故障" 我的版本: 6 项观测指标 + 四方确认 主流:业务大盘归运营管 我的版本: 把"财务大盘 / 业务大盘"作为发布观察指标 主流:验收 = 测试通过 我的版本: 四方确认 (开发 / 测试 / 技术 TO / 产品) 什么时候不该用这套 也踩过坑。 某次内部小工具改动,代码量不到 200 行。 我也想搞 6 阶段——leader 直接说:"过度。" 事后是对的。 我的判断: 核心业务系统改造 → 必上(尤其涉及财务 / 业务大盘) 跨多研发角色的项目 → 必上(否则四方确认走不通) 内部工具 / 后台脚本 → 别上(单人项目,4 阶段够) DDL 类无法灰度的改动 → 跳过第 5 阶段(灰度),其余照走 不影响 KPI 的小项目 → 简化为 3 阶段(UT+集成+上线) 阴面 · 这套也有副作用 我自己用了这套 4 年,踩过的坑: 重型流程 —— 小项目用不上,6 阶段成本太高 跨公司不通用 —— 没有"四方确认 / 业务大盘"概念的公司套不进来 可能流于形式 —— 团队成员把 6 阶段当 6 个 checkbox 而非 6 类性质 决策慢 —— 至少 6 次评审 / 检查 最后一条最关键 —— **6 阶段的代价是"决策周期变长"**。 所以才有上面那句:"小项目别上 / 不影响 KPI 的项目简化为 3 阶段"。 写在最后 把测试拆 6 阶段,不是为了"显得专业"—— 是因为我经历过太多次: "你那阶段不是测过吗?怎么还出问题?" 仔细看,会发现: 那阶段测的不是这一类问题 。 每阶段性质不同 —— 验证手段就该不同。 6 阶段是"性质拆分",不是"动作拆分"。 跟"渐进式改造"和"比对工具"一样,这是一套 关心可逆性、关心 追溯性 的工程纪律。 写到这,我也不太确定 6 阶段对所有团队都成立。 我经历的项目都是"核心业务系统 + 跨多角色 + 业务大盘敏感"—— 这种场景 6 阶段几乎是必修。 但创业团队 / 内部工具 / 没有"业务大盘"这个概念的公司—— 搞这套可能反而是负担。 这点我自己也还在想。 下一篇打算写 17 类业务迁移分类—— 跟 6 阶段是一对:6 阶段是 纵向 (时间),17 类是 横向 (业务域)。 两者合起来才是完整的迁移管理体系。 (以上 SOP 都做了脱敏。 如果你做过核心系统改造,欢迎评论区聊聊你们的验收流程长什么样, 特别想听 6 阶段简化为 3 阶段后,踩过的坑 。)

v2ex · 2026-06-11 11:02:21+08:00 · tech

最近对 AI 辅助编程挺感兴趣的,想看看在几乎全靠 Codex 辅助的情况下,能以多快的速度跑通一个完整的 Web 项目。为了找个现成的逻辑来练手,我就复刻了一个经典的测试小工具:8values 。 🔗 练手项目地址: https://8value.online/ 🛠️ 开发体验 & 感受: 整个项目基本是抱着 Codex 的大腿写出来的。体验下来感觉非常有意思: 逻辑生成: 像这种“几十道题、计算分值、映射到 4 个不同维度(经济、外交、公民、社会)并匹配最终结果”的逻辑,用自然语言描述给 Codex 后,它给出的代码骨架非常完整,省去了很多敲 boilerplate 代码的时间。 样式微调: 前端 UI 主要也是让 AI 帮忙生成的,然后我自己微调了进度条的动效和移动端的适配。有时候 AI 会在 CSS 上犯点小迷糊,但通过多轮 Prompt 纠正,基本都能搞定。 整体感受: 作为练手项目,AI 确实极大降低了“造轮子”的摩擦力,感觉以后验证一些小想法会越来越快。 📌 关于 8values 测试本身: 如果不了解 8values 的 V 友,简单科普一下:这是一个通过回答几十道情境题,来测算你个人在“经济、外交、公民、社会”四个维度的倾向,并最终给你打上一个“意识形态标签”(比如古典自由主义、社会民主主义等)的测试。 大家平时可能觉得自己是“中立”的,用这个数据化的小工具照照镜子还挺好玩。 ⚠️ 叠个甲(防杠补丁): 这就是个拿来练手编程的项目,测试题目和模型本身也是网上开源的经典版本。大家点进去测着图一乐就好,看看结果准不准。千万别在评论区过度键政哈,保护账号,Peace & Love 🐶 欢迎大家来测测看,也欢迎从技术或前端体验的角度提提建议(比如哪里有 Bug 、移动端排版等),我再去让 Codex 帮忙修一下,哈哈。

v2ex · 2026-06-11 10:15:58+08:00 · tech

最近对 AI 辅助编程挺感兴趣的,想看看在几乎全靠 Codex 辅助的情况下,能以多快的速度跑通一个完整的 Web 项目。为了找个现成的逻辑来练手,我就复刻了一个经典的测试小工具:8values 。 🔗 练手项目地址: https://8value.online/ 🛠️ 开发体验 & 感受: 整个项目基本是抱着 Codex 的大腿写出来的。体验下来感觉非常有意思: 逻辑生成: 像这种“几十道题、计算分值、映射到 4 个不同维度(经济、外交、公民、社会)并匹配最终结果”的逻辑,用自然语言描述给 Codex 后,它给出的代码骨架非常完整,省去了很多敲 boilerplate 代码的时间。 样式微调: 前端 UI 主要也是让 AI 帮忙生成的,然后我自己微调了进度条的动效和移动端的适配。有时候 AI 会在 CSS 上犯点小迷糊,但通过多轮 Prompt 纠正,基本都能搞定。 整体感受: 作为练手项目,AI 确实极大降低了“造轮子”的摩擦力,感觉以后验证一些小想法会越来越快。 📌 关于 8values 测试本身: 如果不了解 8values 的 V 友,简单科普一下:这是一个通过回答几十道情境题,来测算你个人在“经济、外交、公民、社会”四个维度的倾向,并最终给你打上一个“意识形态标签”(比如古典自由主义、社会民主主义等)的测试。 大家平时可能觉得自己是“中立”的,用这个数据化的小工具照照镜子还挺好玩。 ⚠️ 叠个甲(防杠补丁): 这就是个拿来练手编程的项目,测试题目和模型本身也是网上开源的经典版本。大家点进去测着图一乐就好,看看结果准不准。千万别在评论区过度键政哈,保护账号,Peace & Love 🐶 欢迎大家来测测看,也欢迎从技术或前端体验的角度提提建议(比如哪里有 Bug 、移动端排版等),我再去让 Codex 帮忙修一下,哈哈。