26 | 越来越重要的破坏性测试
王潇俊
该思维导图由 AI 生成,仅供参考
你好,我是王潇俊。今天我和你分享的主题是:越来越重要的破坏性测试。
其实,持续交付中涉及到的与测试相关的内容,包括了单元测试、自动化测试、冒烟测试等测试方法和理念,我为什么我把破坏性测试拿出来,和你详细讨论呢?
原因无非包括两个方面:
其一,单元测试等传统测试方法,已经非常成熟了,而且你肯定也非常熟悉了;
其二,破坏性测试,变得越来越重要了。
那么,破坏性测试到底是因为什么原因变得原来越重要呢?
随着 SOA、微服务等架构的演进,分布式系统对测试的要求越来越高,不再像传统的单体应用测试一样,可以很容易地无缝嵌入到持续交付体系中。因为分布式系统的测试不仅需要大量的前提准备,还存在着非常严重的服务依赖问题。
这就使得分布式系统的测试工作,除了要关注运行的应用本身外,还要考虑测试环境的因素。
很快,我们就发现,破坏性测试可以解决分布式系统测试的这些难题,而且还可以帮助我们解决更多的问题。它可以弥补传统持续交付体系只关注代码或应用本身,而忽略其他外部因素影响运行中代码的问题。而且,破坏性测试还能很好地证明整个分布式系统的健壮性。
所以,与其老生长谈一些传统的测试方法,不如我们一起看看更新鲜、更好用的破坏性测试。
什么是破坏性测试?
公开
同步至部落
取消
完成
0/2000
荧光笔
直线
曲线
笔记
复制
AI
- 深入了解
- 翻译
- 解释
- 总结
混沌工程:持续交付中的破坏性测试利器 Netflix公司的Chaos Monkey系统是混沌工程的典型实践,通过在工作日期间随机杀死服务,制造混乱来检验系统的稳定性。这种混沌工程的实践为持续交付中的破坏性测试提供了很好的借鉴。破坏性测试在持续交付中变得越来越重要,尤其是在分布式系统的发展下,传统测试方法已不再适用。破坏性测试通过有效手段使软件应用程序出现奔溃或失败的情况,然后测试其结果是否符合预期。然而,破坏性测试的破坏特点使得它在持续交付中无法显示真正的威力。混沌工程的提出很好地解决了这个问题,使破坏性测试的威力能够在持续交付过程中被真正发挥出来。混沌工程通过受控实验观察系统弱点,建立在真实场景中进行实验、自动化连续实现、最小爆破半径等高级原则,更符合持续交付的需求和胃口。因此,混沌工程成为持续交付中的破坏性测试利器,为系统的健壮性提供了重要保障。
仅可试看部分内容,如需阅读全部内容,请付费购买文章所属专栏
《持续交付 36 讲》,新⼈⾸单¥59
《持续交付 36 讲》,新⼈⾸单¥59
立即购买
© 版权归极客邦科技所有,未经许可不得传播售卖。 页面已增加防盗追踪,如有侵权极客邦将依法追究其法律责任。
登录 后留言
全部留言(6)
- 最新
- 精选
- 九脉一谷之前还没有考虑到破坏性测试,对于客户端类的产品进行破坏性测试,老师有什么好的建议?
作者回复: 客户端类的破坏性做的不多,主要也是网络,内存等可控又便于模拟的部分,针对软件设计的行为;硬件方面的破坏测试通过由硬件厂商来处理吧,哈哈。不过之前也有听一些大厂用专门设备来模拟的。
2018-09-031 - 春来草自青携程是否使用了混沌猴或者功能相似的工具?能不能详解一下携程的破坏测试是怎么做的?
作者回复: 携程这方面也还起步,由于很多老系统监控和恢复能力都不行,所以破坏面现在都比较小,对新系统会经常采用计划好的演练,随时的破坏还不敢做:)
2018-09-021 - yiluo磁盘损坏如何测试?用系统设置来模拟吗?
作者回复: 是的,绝大部分是依靠模拟
2018-09-04 - 怀揣梦想的学渣提到混沌工程,就提到Netflix,在其他博客也有看到。2023-05-06归属地:山东
- 戴斌我们实际上未完全解决单点故障,这种破坏性测试应该很有效果。各个应用之间的耦合性也很高,不敢轻易做类似测试。2020-03-24
- 皮卡熊对于性能测试有没有一些最佳实践分享?2019-05-07
收起评论