QA验收 #11
openCNB #101 小组会费率:测试环境审批回调验收与操作手册
Added by Redmine Admin 22 days ago. Updated 20 days ago.
0%
RA Updated by Redmine Admin 22 days ago Actions #1
协调预检(非正式QA执行结果):用户已安排测试环境验收。原QA责任线程已核验目标两仓与候选,但实际默认执行根仍为失效旧目录,受支持resume/queue修复未通过,写入路线暂停待用户决定。Backend与Operations只读追踪发现,共用生产回调可能将本库未知sp_no转入财务并创建镜像;测试专用模板不等于回调隔离。当前禁止发真实审批或向生产发送模拟事件,Ops正在已登录浏览器只读核对实际回调URL/应用/事件范围。正式测试、测试报告与手册未完成;后续必须逐条追加实测结果并重读确认。生产未动。
RA Updated by Redmine Admin 22 days ago Actions #2
协调现场隔离核验:Operations在已登录企业微信后台只读确认,当前开启回调通知的模板仅正式“客户开票”“专家费率”;旧测试费率模板及新“NDB费率审批-测试专用”均未勾选。获准调用审批接口的自建应用仅Mindsetech CRM;该应用接收服务器为正式域名 crm-api.mindsetech.com/v1/callback/wecom/,包含审批状态通知事件。未保存、未改勾选、未校验、未提交审批。结论:当前无已证实的测试专用真实回调通道,真实回调验收保持Blocked;不得直接打开新模板订阅让事件进入正式端。QA执行根路由仍待用户决定。此为协调前置核验,不是业务QA通过。
RA Updated by Redmine Admin 22 days ago Actions #3
QA 测试结果 — 安全只读 R1 — 2026-10-20 20:43 Asia/Shanghai¶
- Redmine NDB #11 / CNB #101。
- 环境:仅 https://tcrm.mindsetech.com、https://tcrm-api.mindsetech.com。
- 候选:Backend 1.20.5b0/b98e8bf,Web 2.16.4-beta.0/a4c06ea。
- QA:本原 QA 责任线程。汇总:Pass 3 / Fail 0 / Blocked 7 / Skipped 0。
- 所有网络业务请求均为匿名 GET;没有读取个人数据、提交审批、写测试数据或发送回调。
| 编号 | 用例/层级 | 前置与操作 | 预期 | 实际/证据 | 状态 |
|---|---|---|---|---|---|
| COMMON-001 | 后端实际版本/接口 | 匿名 GET /v1/version/ | 200,1.20.5b0 | 2026-10-20T12:42:58.477Z:200,data.version=1.20.5b0 | Pass |
| COMMON-002 | Web 静态制品/环境 | GET 测试站及其入口和 login 资源 | 200,预期候选版本 | 首页200,/assets/index-vtXHy6cc.js 引用 login 资源200,提取版本仅2.16.4-beta.0;不等于页面业务通过 | Pass |
| RATE-001 | 匿名专家列表/接口 | 无凭据 GET /v1/candidates/ | 拒绝,未返回列表 | HTTP401,envelope.code401,data.list 非数组 | Pass |
| RATE-002 | 测试站登录、角色权限及费率入口/浏览器 | 恢复指定 Space14/p1 | 使用获准空间查看测试站 | ego-browser taskSpace(14) 报 task space not found;未创建替代空间、未读取凭据 | Blocked |
| RATE-003 | 未设置与0展示、刷新恢复/浏览器 | 已登录账号、脱敏QA专家 | 未设置与0区分且刷新一致 | 无可用获准浏览器空间,未查看记录 | Blocked |
| RATE-004 | 1800阈值、外币及普通编辑防绕过/真实服务 | 专用QA数据、安全写范围放行 | 阈值及换算正确,普通编辑不可绕过 | 当前安全包禁止业务数据写;未执行写请求 | Blocked |
| RATE-005 | 真实费率审批提交与批准回调/端到端 | 测试专用模板及独占测试回调已证实 | 仅测试库闭环并应用快照 | 现场记录为正式接收URL且测试模板未订阅,真实审批被明确禁止 | Blocked |
| RATE-006 | 拒绝、撤销及既有费率保持/端到端 | 隔离审批通道、专用记录 | 拒绝撤销不改已有费率 | 同上,未提交或伪造事件 | Blocked |
| RATE-007 | 重复、乱序回调/集成 | 隔离接收端及获准事件 | 幂等且终态不回退 | 回调模拟未获放行,不以本地mock替代 | Blocked |
| RATE-008 | 正式图文手册复现/浏览器 | 当前测试版本真实流程通过 | 同环境步骤与截图一致 | 浏览器空间缺失且关键流程未通过,无截图,仅提供Blocked草稿 | Blocked |
所需前置与边界¶
统筹需恢复或交接可用浏览器空间;随后确认具有专家查看/费率操作权限的测试账号和脱敏QA记录。真实审批须先证实事件不会进入生产,不能仅启用测试模板订阅。需要审批人配合时由统筹统一安排,不要求用户重复已有授权。
此轮无业务Fail;Blocked不是产品缺陷结论。未运行构建、自动化、登录后业务或生产检查。手册草稿位于 projects/ndb/frontend/docs/user-manual/issues-100-101-qa-draft.md,UI及项目复核未执行。结果写入后须重读Redmine确认,未确认前不宣告QA完整交付。
RA Updated by Redmine Admin 22 days ago Actions #4
QA 测试结果 — 安全页面 R2 — 2026-10-20 Asia/Shanghai¶
NDB #11 / CNB #101。环境仅tcrm/tcrm-api.mindsetech.com;候选Backend1.20.5b0/b98e8bf,Web2.16.4-beta.0/a4c06ea(沿用R1版本证据,未重复Pass)。本原QA责任线程,Space17/p1 agent独占。Pass4 / Fail0 / Blocked2 / Skipped0。
| 编号 | 用例/层级 | 前置与操作 | 预期 | 实际与证据 | 状态 |
|---|---|---|---|---|---|
| R2-SESSION | 已登录测试站访问/浏览器 | 恢复获准Space17,观察首页 | 测试域名下可进入授权页面 | 已有管理员Rex Linn登录态,专家和客户账单页面可访问;未读取凭据,未测试重新登录 | Pass |
| R2-RATE-01 | 小组会未设置展示/浏览器 | 姓名搜索QA,选择明确写合成数据的专家574234 | 缺失值显示未设置,不冒充0 | QA附件验收20261019背景明确“合成数据,请勿联系”;详情显示“小组会费率: 未设置”;01-rate-unset.png | Pass |
| R2-RATE-02 | 费率类型入口与原值/浏览器 | 点击更改费率,选择小组会费率,不提交 | 可选择该类型,原值未设置,审批阈值提示可见 | 原费率未设置、新费率空,提示折合人民币超过1800需审批;02-group-rate-form.png;仅表单查看,未验证实际阈值执行 | Pass |
| R2-RATE-03 | 取消与刷新保持/浏览器 | 点击取消后reload,等待精确未设置文本 | 不改变费率,刷新仍未设置 | 精确文本仍可见,未点击提交/上传;正常访问日志属已授权范围 | Pass |
| R2-RATE-04 | 小组会0独立展示/浏览器 | 只选现有明确合成QA记录 | 小组会0不同于未设置 | QA姓名搜索仅找到上述一条且小组会未设置;其顶部0为其他费率,不能当作小组会0证据;禁止修改fixture | Blocked |
| R2-RATE-05 | 非管理员权限边界/浏览器 | 需要获准非管理员测试会话 | 角色差异符合权限规则 | 当前仅已有管理员会话;未切换或扩大读取账号凭据 | Blocked |
截图位于projects/ndb/frontend/docs/user-manual/assets/issues-100-101/,已逐张查看;仅截取合成专家和费率弹窗,无联系方式/凭据。第一次text=小组会等待匹配两个元素,仅定位歧义;随后snapshot确认并使用精确文本,不计产品Fail。表单截图包含选类型后出现的新费率必填提示,不代表点击提交。
R1真实阈值/写入防绕过、审批提交及回调各项仍Blocked,未重跑、未转Pass。需要明确合成的小组会0记录、非管理员测试账号及回调隔离。正式手册仍Blocked,UI/项目复核未完成。Space17留在574234详情,不finish供统筹/UI复核。未业务提交/恢复/回调/生产/配置或源码修改,未commit/push/deploy。
RA Updated by Redmine Admin 21 days ago Actions #5
阶段范围说明(非新测试轮次):用户明确选择暂仅页面验收。R2页面观察去重后6 Pass / 4 Blocked(两issue共享观察不重复计数),历史journal124/125及各用例结果不变,不新增Pass。关键业务测试本阶段未执行,不能宣称#100/#101完整通过。未批准25条合成种入、加密回调或防重集成测试;后续须另行授权,本阶段不继续请求该批授权。禁止业务数据新增/修改、回调密钥读取、审批/开票提交、回调、防重并发、DB/ES/队列写及任何生产操作;正常测试页面访问审计允许。Backend/UI局部复核结论保持,正式流程和完整手册仍Blocked。本次仅文档及范围说明,无新测试执行。
RA Updated by Redmine Admin 20 days ago Actions #6
生产候选安全补缺:L1 Backend收据复核 — QA-CLOSURE-20261022-R1 / #11¶
候选BE 85721778e8ee164a347fd8890aa8061dedbb4741、FE7194ace4292e07963b0f1e66cf3e9f7fc4ef8896。执行人为Backend,QA只读核对原始run-01.log、results.json、closure_tests.py和delivery.md;没有重跑。真实迁移、独占合成PG、TransactionTestCase/APIClient、真实JWT解析与crypto/receiver/guards;仅供应商/ES外边界mock,全进程禁止外联。JWT是本地签发,不是密码登录;ORM基础fixture不改称全程公开API创建。不是共享站UI、独立HTTP完整应用或真实企微E2E。
本issue关联本地集成子项8 Pass / 0 Fail;27项唯一执行总计AUTH1/CAP12/CRYPTO9/MEETING1/UNKNOWN4,7.438秒。#11与#12共享的URL/crypto负例5项是同一执行,不重复计总数。565旧测试不重造,旧R1/R2/R3和父例Blocked不覆盖。
| 用例(closure_tests.ClosureTests) | 预期 | 实际断言摘要 | 状态 |
|---|---|---|---|
| test_CRYPTO_group_terminal_2 | 真实加密路由分流及终态/重复/旧事件一致 | {"events":[2,2,1],"terminal":"approved","log_count":1,"real_crypto":true} | Pass |
| test_CRYPTO_group_terminal_3 | 真实加密路由分流及终态/重复/旧事件一致 | {"events":[3,2],"terminal":"rejected","log_count":1,"real_crypto":true} | Pass |
| test_CRYPTO_group_terminal_4 | 真实加密路由分流及终态/重复/旧事件一致 | {"events":[4,2],"terminal":"cancelled","log_count":1,"real_crypto":true} | Pass |
| test_CRYPTO_reject_cipher | 非法加密输入拒绝且业务快照不变 | {"http":200,"code":400,"unchanged":true,"kind":"cipher"} | Pass |
| test_CRYPTO_reject_missing | 非法加密输入拒绝且业务快照不变 | {"http":200,"code":400,"unchanged":true,"kind":"missing"} | Pass |
| test_CRYPTO_reject_receiver | 非法加密输入拒绝且业务快照不变 | {"http":200,"code":400,"unchanged":true,"kind":"receiver"} | Pass |
| test_CRYPTO_reject_signature | 非法加密输入拒绝且业务快照不变 | {"http":200,"code":400,"unchanged":true,"kind":"signature"} | Pass |
| test_CRYPTO_url_verification | 真实解密echo一致 | {"http":200,"real_crypto":true} | Pass |
证据:outputs/production-release-20261022/backend-closure-20261022/{results.json,run-01.log,closure_tests.py,delivery.md};QA映射在qa-closure-20261022/backend-receipt-map.md。results SHA256 438c04aba66bfa151c7914b446f1829c6fd3b4e802b3b5b5c66e7c0bb77bf9d3;脚本SHA256 97a2d4080d0411ef10433a4c6fc168d50fc69e647373941fa31886a2768aa93e。
共享页面:本轮Space17(名称NDB production gap closure 20261022)直接核FE2.16.4-beta.2/BE1.20.5b4;正常管理员登录及合成专家574234未设置展示、费率表单查看后取消/刷新不变已观察并采图,仅作当前适用指南复现,不重复新增旧R2业务Pass。0记录仍待最小共享fixture放行。
未真实通知/付款/外部审批/生产造数,无产品修改或提交推送部署;102及安全手册工作继续。真实供应商层、共享缺口和适用手册按层分开,不能用本地Pass宣称全部生产QA通过。
RA Updated by Redmine Admin 20 days ago Actions #7
共享测试站安全补缺 — QA-CLOSURE-20261022-SHARED-R2 / #11¶
环境仅tcrm/tcrm-api,直接核BE1.20.5b4/FE2.16.4-beta.2;对应最终main BE85721778/FE7194ace的关键blob复用依据由Backend/Web/统筹提供,不写成main已部署。QA原责任会话,ego本轮Space17,日期2026-10-22。管理员真实UI登录/profile id2/admin;新PM真实UI登录/profile id16/pm。没有真实通知/审批/开票/付款/生产造数。
本issue新增共享窄范围子项 1 Pass / 0 Fail / 0 Blocked;三issue合计唯一共享6项,不与Backend27或历史轮次相加。下列前提/操作及实际证据只说明对应子项,不自动升级整个父例。
| CaseID | 用例/操作与预期 | 实际与证据 | 状态 |
|---|---|---|---|
| SHARED-RATE-ZERO-01 | 小组会0独立展示:合法身份/合成记录,应符合对应展示/权限边界 | 新专家574237经合法API设0后GET及页面/刷新均0,原cpt100不变;对照574234仍未设置。记录6 applied、sp_no空;图07。 | Pass |
fixture manifest位于outputs/production-release-20261022/qa-closure-20261022/:shared-rate-manifest.json、shared-fixture-manifest.json、shared-account-manifest.json、pm-capability-evidence.json,逐步HTTP/code/确切ID/读回及来源均保留。A创建/0费率应用会正常写测试ES,已读Ops es-readonly.json确认staging独立索引无fallback;不宣称零I/O。B只建内部draft/prepay,不关联Task、不申请开票。账号仅新建专用PM,不修改旧未激活账号/Role权限,随机凭据只内存与批准Bitwarden。
父例更新:原R2-RATE-04缺0样本已由本轮真API/UI子项补齐;原回调父例的本地crypto/终态子项见journal205,真实供应商及共享高阈值申请仍无外发执行;未用支付PM观察冒充费率写权限。
手册:shared-safe-guide.md及首版3图已有UI/Web/Backend三方Pass;新增incremental-guide.md和图04–08已实测、目视检查并送统筹安排增量复核,未把待审写成已审。旧102核心单笔5图及Pass保留,不重复全量。报告、图、脚本仅写新QA目录;两产品仓/旧手册只读,无commit/push/tag/deploy/真实生产写;共享旧Task126成本只有GET。
RA Updated by Redmine Admin 20 days ago Actions #8
手册审核/空间收尾补记 — QA-CLOSURE-20261022-MANUAL-CLOSE(非新测试轮次,不新增Pass、不重复27或共享6条用例)。
两份已实测安全指南均获UI/Web/Backend原责任线程独立定向Pass,登记outputs/production-release-20261022/manual-review-register.md。首版图01–03与增量图04–08分别审阅;新增0/未申请账单/PM只读章节不借旧Pass覆盖。仅调整审核状态,未引入新业务步骤。最终两文档/八图精确清单及逐文件SHA256见qa-closure-20261022/delivery-manifest.json。
shared-safe-guide.md SHA256 30e92ef42884d53888a2928042caa716b17c0e1fef3f03bf5f8b58a7ca8325ad
incremental-guide.md SHA256 413aed2c70a7324910c808345fd77f55fa2fcb6bf0c4d9564c2444c5cffad900
额外按文只读核对账单68过滤仅1行、详情刷新仍not_requested及空时间单号,未新增业务写/Pass。Space17于2026-10-22T05:40:46Z完成finish({keep:[]}),本轮浏览器已结束,合成fixture及Bitwarden凭据条目保留,不清理业务数据。新共享PM16与管理员均真实UI登录/profile已核;旧Task126成本仅GET。
边界仍保留:其它申请状态及非空单号时间的共享UI、共享会议UI、真实供应商提交/审批人/订阅投递/媒体OSS未执行;本地27不冒充这些层级。旧#14/#15历史未因此修复或关闭。QA本次安全包已收口,不继续扩场景或等待整套UI设施;用户手册/资产版本化及生产门禁由统筹/Web/Ops按后续精确释放安排。两产品仓和旧13项untracked未改,无commit/push/tag/部署/生产写。