实现DevOps:有效测试的挑战与策略
1. 有效测试的常见阻碍
在投资测试框架时,我们经常会听到以下反对意见:
- “我们没有运行代码测试的许可证,仅够QA团队使用。”
- “我们的应用程序架构(或数据层规模)不允许在开发环境中运行验收测试。”
- “我们真的没有时间做这个,我们需要专注于交付,业务方不会接受的。”
- “我们的遗留应用程序简直是噩梦,完全无法测试。”
- “我们只控制应用程序的一部分,必须与其他方协调测试和发布,这快把我们折磨死了。”
- 最令人惊讶的是,开发者的抵制:“这会拖慢我们的进度,打乱我们的节奏,让我们无法从大局思考,完全是浪费时间和精力。”
成本通常被认为是不提供接近生产环境的复制环境进行测试的一个因素。但这往往是一种虚假的节约,有很多案例表明,对性能有严格SLA要求的系统,由于在低规格的QA环境中无法模拟实际负载,导致在生产中出现问题。
如果没有出色的自动化测试覆盖,可能会出现以下三种情况:
- 在流程结束时花费大量时间查找和修复漏洞。
- 花费时间和金钱进行手动和回归测试。
- 发布低质量的软件。
2. 应对遗留代码的挑战
遗留代码问题可能是最棘手的问题之一,这也是我们常把一些应用程序称为“大泥球”的原因。遗留代码通常结构不佳,我们总是担心最小的修改也会意外破坏某些功能。在大多数情况下,即使可能,添加全面的测试也没有太大价值,这就是Michael Feathers所说的遗留代码困境:当我们更改代码时,应该有测试;但要进行测试,我们通常需要更改代码。
不过,这并不意味着我们只能束手无策。遗留代码
DevOps有效测试的挑战与应对策略
超级会员免费看
订阅专栏 解锁全文
59

被折叠的 条评论
为什么被折叠?



