测试左移(Shift-Left)实践

共 19 题
#

1. 测试左移的核心理念,如何在需求/设计/编码阶段前置质量活动?

A 测试左移就是把测试人员全部调到开发团队办公
B 测试左移意味着取消独立的测试阶段
C 测试左移是把质量活动前置到需求、设计与编码阶段,内建质量、尽早发现缺陷 ✓ 正确答案
D 测试左移只关注单元测试
#

2. 测试左移的具体实践,需求评审、代码评审、单元测试、静态分析、TDD 的协同?

A 需求评审产出可测验收标准,TDD 转化为测试,静态分析与代码评审把关,共同构成持续反馈链 ✓ 正确答案
B 需求评审、TDD、静态分析相互独立,无需协同
C 静态分析可以完全替代单元测试
D 代码评审只针对测试人员的工作
#

3. 测试左移的缺陷成本曲线,缺陷引入阶段与发现阶段的成本倍数如何支撑左移投入决策

A 缺陷修复成本与发现阶段无关
B 缺陷发现阶段越晚,修复成本通常越高(可呈指数级增长) ✓ 正确答案
C 需求阶段引入的缺陷修复成本最低
D 缺陷成本曲线不支持左移投入决策
#

4. 测试左移的度量,缺陷逃逸率(Defect Escape Rate)和缺陷引入阶段的分析方法?

A 缺陷逃逸率只关注缺陷总数,无实际意义
B 缺陷逃逸率越低越好,无需考虑其他指标
C 缺陷引入阶段的确定没有分析价值
D 通过回溯缺陷引入阶段可识别各阶段门禁失效,指导左移投入方向 ✓ 正确答案
#

5. 威胁建模(Threat Modeling)在设计阶段的应用,STRIDE 模型如何指导安全测试用例的前置设计?如何将威胁建模输出转化为可执行的测试?

A STRIDE 只在开发完成后用于安全测试
B STRIDE 只能识别 DoS 威胁
C STRIDE 将威胁分为欺骗、篡改、抵赖、泄露、拒绝服务、权限提升六类,可据此前置设计安全测试用例 ✓ 正确答案
D STRIDE 模型的输出无法转化为可执行测试
#

6. 验收测试驱动开发(ATDD)的流程,如何从用户故事中提取验收条件并先编写自动化验收测试?ATDD 与 BDD 的关系?

A ATDD 与 BDD 完全无关
B BDD 只适用于单元测试
C ATDD 在开发前先写验收测试,BDD 用 Given-When-Then 提供协作化表达,BDD 是 ATDD 的一种落地方式 ✓ 正确答案
D ATDD 要求开发完成后才写验收测试
#

7. Example Mapping 工作坊,如何用规则(Rules)、示例(Examples)、问题(Questions)的结构化方法在需求阶段发现歧义和遗漏?

A 它只用于测试执行阶段
B 通过规则、示例、问题三类卡片结构化澄清需求,用具体示例暴露歧义与遗漏 ✓ 正确答案
C 它不需要干系人参与
D 它替代了所有测试设计
#

8. 测试左移对测试团队角色转型的影响,从执行者到质量教练的职责变化与能力要求

A 测试人员仍然只负责执行测试用例
B 角色转型只影响测试团队的组织管理
C 测试角色从执行者转向质量教练,职责从找缺陷扩展到预防、赋能与过程改进 ✓ 正确答案
D 质量教练不需要掌握自动化与 CI/CD 技能
#

9. 左移与测试设计/测试数据的联动,需求阶段同步产出测试点与数据需求,减少后期返工?

A 测试设计只能在系统实现完成后进行
B 测试数据需求与测试设计无关
C 在需求阶段同步产出测试点与数据需求,可使测试与开发并行、减少后期返工 ✓ 正确答案
D 需求阶段做测试设计没有价值
#

10. 左移与 AI 辅助的结合,AI 生成单元测试、静态扫描与代码评审如何放大左移收益?

A AI 可以完全替代人工测试设计
B AI 生成测试无需验证断言质量
C AI 静态扫描已能发现所有缺陷
D AI 生成测试、静态扫描与代码评审可放大左移收益,但生成质量需人工校验 ✓ 正确答案
#

11. 左移中的评审-测试联动,需求评审发现的歧义如何直接转化为测试条件与验收场景,避免评审结论与测试脱节?

A 把评审中澄清的歧义直接转化为验收条件与测试场景,并建立跟踪,可避免评审与测试脱节 ✓ 正确答案
B 评审结论无需落实到测试
C 评审只记录问题,不记录结论
D 测试用例与评审结论无关联
#

12. 左移与契约先行,在设计阶段用契约锁定接口行为,前后端并行开发时测试如何前置?

A 契约先行要求前后端必须顺序开发
B 契约只是设计文档,不可执行
C 用契约锁定接口行为,支持前后端并行开发,并通过契约测试前置接口验证 ✓ 正确答案
D 契约测试只能在后端完成后进行
#

13. 测试左移在敏捷/DevOps 团队中的落地挑战和应对策略?

A 需同时克服文化、能力、工具链与节奏挑战,通过试点、培训与度量逐步推进 ✓ 正确答案
B 只要工具齐全左移就能自动落地
C 左移只适用于瀑布式开发
D 敏捷团队无需做左移
#

14. 安全左移(DevSecOps Shift-Left),如何在设计阶段引入 SAST、依赖扫描(SCA)、密钥检测(Secret Detection)?安全测试左移的组织阻力如何克服?

A 安全检查只能在上线前进行
B 通过 SAST、SCA、密钥检测嵌入 CI 并分级处理,配合协作机制,可在开发早期拦截安全问题 ✓ 正确答案
C SAST 只扫描生产环境
D 安全左移必然拖慢所有交付
#

15. 测试左移与右移的平衡,左移把质量前置到开发与设计阶段、右移依赖生产观测补充,如何按风险与成本确定两者的投入比例?

A 应只做左移或只做右移
B 左移与右移是完全对立、不可共存
C 左移负责低成本早期拦截、右移负责真实流量观测,按风险与成本动态确定投入比例,总体以左移为主 ✓ 正确答案
D 投入比例应固定不变
#

16. 测试左移中的需求评审检查清单,可测性、完整性、冲突与验收标准如何逐项检查?

A 检查清单从可测性、完整性、冲突、验收标准等维度结构化检查,拦截需求阶段缺陷 ✓ 正确答案
B 需求评审只需看功能是否完整
C 检查清单只适用于测试执行阶段
D 需求评审无需检查可测性
#

17. 测试左移在遗留系统上的切入点,如何从新增功能与高危模块开始逐步左移?

A 应从新增功能与高危模块开始,先建立基线再逐步扩展,避免一次性大改的风险 ✓ 正确答案
B 遗留系统无法做左移
C 应一次性完成所有存量代码重构
D 遗留系统无需补测试
#

18. 左移中测试如何与产品经理协作定义验收标准,从用户故事到可执行验收条件的协作流程?

A 验收标准只能由产品经理单独定义
B 通过三方协作把用户故事转化为可执行验收条件,产品负责业务意图、测试负责可测性验证 ✓ 正确答案
C 测试人员不需要参与需求澄清
D 验收标准无需可执行
#

19. 左移的阻力度量,如何用缺陷逃逸与返工率数据证明左移收益,说服对测试前置投入抵触的开发与管理者?

A 无需数据,凭理念即可说服抵触者
B 用缺陷逃逸率、返工率、缺陷发现阶段分布等对比数据,把左移投入与下游成本回收挂钩来说服 ✓ 正确答案
C 返工率与左移无关
D 缺陷逃逸率只能证明问题、不能证明收益