# 1. 字符编码边界测试(UTF-8 多字节字符、emoji、组合字符、零宽字符、BOM)如何系统化设计?请举例说明每种字符类型可能引发的典型缺陷。 A emoji 位于补充平面,在 3 字节 UTF-8 数据库中可能无法存储,需 4 字节支持 ✓ 正确答案 B 所有字符在 UTF-8 下都占相同字节数 C 组合字符与 BOM 不会引起任何缺陷 D 截断长度只需按字节数考虑即可
# 2. 伪本地化(Pseudo-Localization)测试的原理和实施步骤是什么?它如何在不等待翻译的情况下发现硬编码字符串和布局溢出问题? A 伪本地化需要等真实翻译完成才能执行 B 硬编码字符串在伪本地化下也会被正确替换 C 伪本地化只影响英文显示 D 伪本地化通过替换为加长带变音字符的文本,提前发现硬编码字符串与布局溢出 ✓ 正确答案
# 3. RTL 语言(阿拉伯语/希伯来语)布局镜像测试需要验证哪些元素?除了文本方向,还有哪些 UI 元素需要镜像处理? A RTL 只需把文本右对齐即可 B 双向文本混排与 RTL 无关 C 数字在 RTL 中必须全部反转 D 除文本方向外,图标、箭头、控件顺序、手势方向等都需要镜像处理 ✓ 正确答案
# 4. 浏览器/操作系统/设备兼容矩阵如何制定与排优先级?请说明基于市场覆盖率、业务数据和用户画像的优先级排序方法。 A 应覆盖所有浏览器和操作系统组合 B 优先级与业务数据无关 C 基于市场覆盖率、业务数据与用户画像,把高份额高转化组合设为最高优先级 ✓ 正确答案 D 兼容矩阵制定后无需更新
# 5. 多版本 API 并存时的向后兼容测试策略是什么?SemVer(语义化版本)规范如何指导兼容性测试设计? A SemVer 中主版本升级必须保持向后兼容 B 次版本(Y)升级通常允许破坏性变更 C 版本并存与向后兼容测试无关 D 向后兼容测试要验证旧客户端在新版本下仍能正常工作 ✓ 正确答案
# 6. 浏览器渲染引擎差异(Chromium/WebKit/Gecko)导致的兼容性缺陷模式与专项用例设计 A 所有浏览器渲染引擎行为完全一致 B CSS 布局、JS 行为、媒体与字体等在三大引擎中存在实现差异,需按特性矩阵设计专项用例 ✓ 正确答案 C 只需在 Chromium 上测试即可 D 渲染差异与 CSS 特性无关
# 7. Locale 相关的日期/时间/货币/数字/排序格式如何系统化测试?ICU/CLDR 数据在测试中的作用是什么? A ICU/CLDR 提供权威的 locale 格式规则,可作为格式化输出的基准用于断言 ✓ 正确答案 B 所有地区的日期和数字格式都相同 C 货币符号位置在所有 locale 中一致 D 排序与 locale 无关
# 8. 时区与夏令时(DST)切换在跨区系统中的测试要点有哪些?如何构造 DST 切换瞬间的边界测试场景? A 数据库应直接存用户本地时间 B 时区偏移从不随时间变化 C DST 切换瞬间会出现"模糊、不存在、重复"的本地时间,需用可注入时钟构造边界场景验证 ✓ 正确答案 D 跨 DST 的时长计算无需测试
# 9. 翻译文本截断/溢出如何自动化检测?字体与字形回退(Fallback)在 CJK 和印度系文字中的测试策略? A 文本溢出只能人工目测 B 截图对比与布局测量可自动化检测溢出,字体回退需验证 glyph 缺失时可读性 ✓ 正确答案 C 印度系文字的回退与拉丁文字完全相同 D CJK 文字不存在字形缺失问题
# 10. 灰度升级中新旧客户端并存如何验证兼容?请说明数据格式兼容、协议兼容和行为兼容三个维度的测试方法。 A 灰度期间只能有一个客户端版本 B 行为兼容与灰度无关 C 数据格式兼容不需要验证旧版本读新数据 D 需从数据格式、协议、行为三个维度验证新旧版本并存时的交叉兼容 ✓ 正确答案
# 11. 依赖库/运行时版本(JDK/Node/Python)兼容性回归如何系统化执行?'依赖矩阵爆炸'问题如何缓解? A 应测试所有可能的版本组合 B 依赖矩阵爆炸无法缓解 C 用 CI 矩阵在多个版本下跑测试,并用边界+代表性版本缓解矩阵爆炸 ✓ 正确答案 D 只需测试最新版本
# 12. 数据迁移兼容性测试,如何验证旧版本数据在新版本中正确读取,新版本数据在降级后仍可回退? A 需双向验证:旧数据在新版本可读,新数据在降级后仍可回退,并测试迁移脚本的幂等与回滚 ✓ 正确答案 B 只需验证旧数据能被新版本读取 C 迁移脚本不需要测试回滚 D 迁移失败时无需保持一致
# 13. 低端设备、低内存与弱网条件下的兼容性测试,资源受限环境的验证维度如何设计 A 需覆盖低端设备性能、低内存稳定性与弱网容错,并验证降级体验 ✓ 正确答案 B 只需在高端设备上测试 C 弱网与兼容性无关 D 低内存环境不会引发崩溃
# 14. 操作系统与硬件架构兼容性(x86/ARM、Windows/Linux/macOS)的测试矩阵与优先级 A x86 与 ARM 上运行行为完全一致 B 只需要测试 x86 即可 C 需按部署目标与用户分布制定 OS×架构矩阵,重点验证 native 代码的字节序、对齐等差异 ✓ 正确答案 D 架构差异不影响编译产物
# 15. 国际化(i18n)与本地化(l10n)的根本区别是什么?测试团队在哪个阶段介入最具成本效益? A i18n 是翻译文本,l10n 是能力改造 B 两者是同一概念 C i18n 是让产品具备多语言能力,l10n 是针对特定地区的落地,测试在 i18n 早期介入成本最低 ✓ 正确答案 D 测试应在产品发布后介入
# 16. 多语言环境下的排序(Collation)规则差异如何测试?请以中文拼音排序和笔画排序为例说明。 A 所有语言的排序规则相同 B 中文拼音排序与笔画排序结果不同,需按 locale 选择正确排序器并验证结果 ✓ 正确答案 C 排序与 locale 无关 D 多音字不影响排序
# 17. 浏览器兼容性测试中,自动化截图对比与功能行为测试各自的覆盖盲区是什么? A 截图对比覆盖视觉呈现但盲区是功能行为,功能测试反之,两者需结合 ✓ 正确答案 B 功能测试能发现布局错位的问题 C 截图对比能发现按钮点击无效的问题 D 单一截图对比即可完成兼容性测试