1

如何在需求频繁更改的敏捷环境中使测试用例可维护或通用。

这是我朋友面试时问的一个问题。

4

2 回答 2

3

我对此的简短回答是对待你的测试套件,就像对待你的代码库的其余部分一样。

自动化测试是代码——重要的代码。像做其他所有事情一样注意保持它们的良好因素和清洁,你不会出错。

于 2012-10-19T10:57:59.253 回答
3
  • 在更高的抽象级别编写测试
    • 编写意图揭示测试,而不是模拟用户点击 UI 的测试
    • 使用 Spock、Cucumber 等 BDD 框架。
  • 重用:识别可重用的特性并重用它们。例如,登录功能步骤可以编写一次并在其他功能中重复使用
    • 在服务级别编写比端到端测试更多的测试
  • 使用形式化技术减少回归测试的数量
    • 等价类划分
    • 组合测试
    • 边界值
  • 为整个团队制定测试策略
    • 将白盒测试转移到单元和集成测试
    • 清楚地确定哪些将由测试人员自动化,哪些应该由开发人员自动化。例如,大多数白盒测试都可以使用单元测试来实现。测试象限是我经常使用的。
  • 最重要的是放弃来自 Merge 和 IBM 等供应商的工具。
于 2012-10-18T23:14:27.147 回答