SaaS 套餐页地区显示不一致,如何核对币种、文案与配置? | 全球代理
先列出套餐页的预期字段(币种、语言、税、套餐名、CTA),再对照地区配置、语言与账户类型判断差异来源,区分预期差异与缺陷。
同一套餐页在不同地区显示不一样,不一定就是缺陷。先列出哪些字段应该变化、哪些必须一致,再判断实际结果是否违反产品规则。测试地区清单可参考全球代理 IP 产品页确定,价格与税费预期则必须来自 SaaS 自己的产品规则。先列出应该随地区变化的字段——币种、税、语言、可用套餐——再对照地区配置、账户类型、缓存和账单主体逐项判断;只有“该一致却没一致”才是缺陷。核对展示时,若站点按 IP 分地区,用目标地区出口可以验证这条路径,但要同时记录账单国家、账户、Cookie、语言和缓存键——出口变化不保证内容变化,固定出口也不保证缓存一致。最后用对照表记录预期值、实际值和判定结果,方便后续回归。
列出套餐字段及其地区变化规则
测试前先把字段分成三类:必须随地区变、必须一致、可以变但要有规则。目标地区清单可先查全球代理 IP 产品页,再按产品自己的定价与税务规则确定预期值。币种、税费、语言、可用套餐通常属于第一类;套餐名、功能清单、结算周期属于第二类;促销文案、推荐套餐属于第三类。
分类不写清楚,测试就会变成“看到不一样就报 bug”。三类字段混在一起,是最常见的误报来源。
对照地区、语言和账户类型
先按产品的定价与税务规则,确定价格、币种和税各自由什么决定——常见的是账单国家、账户类型、合同或税务登记,未必是访问地区。规则写明“仅语言变化不改金额”时,才把“同地区换语言价格不变”写成回归断言;同地区同语言换账户类型,可见套餐可以变,但同一套餐的标价通常不该变,除非规则另有规定。
这三个维度要交叉做,每次只动一个变量。一次同时换地区和语言,看到差异也说不清是哪一项造成的。
按配置、缓存、CDN 和翻译顺序排查差异
差异出现后按顺序查四层,前三层是工程问题,第四层通常是内容或流程问题。逐层记录动作,别跳层:跳层最典型的表现是还没确认缓存键就先去改翻译。若涉及价格和套餐呈现,可参考代理 IP 价格和套餐判断理解计价口径;SaaS 自身定价仍应以该产品规则为准。
检查地区配置和缓存键
先看地区配置文件里该地区的套餐和价格有没有改过,再看缓存键有没有带上地区和语言。这两层能自己复现、也能自己修,优先排查。复现两个入口的差异时,尽量固定时区、语言、登录状态和账户类型,只让入口这一个变量不同;若站点按 IP 分地区,还需保持同一目标地区出口,否则测到的是两个地区各自的返回。
排查 CDN 返回内容和翻译版本
CDN 按国家返回了不同版本的 HTML,或者翻译层把价格、套餐名也一起本地化了,都会让同一套餐出现两种展示。排查时先看响应头里的缓存命中信息和地区回源情况,再对照翻译平台的版本与发布状态;缓存键的具体配置以所用 CDN 厂商的官方文档为准。注意判定口径:翻译或内容配置导致展示违反了已确认的价格/功能规则,仍然按用户可见缺陷记录,只在“根因归属”一栏写成内容或流程问题——根因类别不能用来取消缺陷本身。只有规则本身不清楚时,才标“待确认”。
区分预期差异与产品缺陷
判定只有四种结果:预期一致、预期变化、缺陷、待确认。币种随地区变,是预期变化;同一地区两种入口显示两个价格,是缺陷;差异来自 A/B 实验或灰度,标待确认并注明实验编号。
判定写进表格,不要只写在对话里。下一轮回归时,这张表就是基线。
回归时逐项比对价格和套餐信息
回归不看“页面长得对不对”,看“字段值是否符合规则”。把上一轮的表格拿出来,逐行核对预期值与实际值;预期变化过的行要先更新规则,再判断。
> 表格中的阈值、用例编号和结果如无测试记录支持,均应视为演示样例;实际验收标准以项目需求、历史基线或团队约定为准。
| 字段 | 是否随地区变 | 预期规则 | 实际值 | 判定 |
|---|---|---|---|---|
| 币种 | 是 | 按地区配置 | EUR | 预期变化 |
| 套餐价格 | 是 | 同地区同语言一致 | 入口 A €29 / 入口 B €39 | 缺陷 |
| 套餐名 | 否 | 各语言统一译名 | 未翻译 | 缺陷 |
| 促销文案 | 可 | 按活动配置 | 未展示 | 待确认 |
表格之外再留一条证据:两个入口的截图,带时间戳和地区标记。截图不写地区,事后无法复现。如果差异只出现在语言、URL 或地区元数据层,按另一条回归线处理,不要混进价格判定。
FAQ
同地区两个入口价格不同,一定算缺陷吗?
先排除 A/B 实验和灰度,排除后按缺陷提。
税率显示 0,是配置漏了吗?
可能是免税地区或企业账户,先确认账户类型。
切语言后价格变了,正常吗?
先看规则:定价规则与语言无关时,价格变化按缺陷记录;规则允许按语言配置不同价目时,按预期变化处理。
移动端和桌面端不一致,先查哪?
先看缓存键是否带端类型,再比同一入口。
