知识卡片
实验发现未知
内容
传统测试验证的是“给定条件会得到预期结果”,适合守住已知属性;混沌工程验证的是复杂系统在真实扰动下会暴露哪些未知行为。发散:越是微服务、云平台和外部依赖交织的系统,越不能只靠断言获得信心。
参考来源
- 位置:《混沌工程:Netflix系统稳定性之道》第1章《为什么需要混沌工程》「混沌工程和测试的区别」一节(源文件:_epub-src/OEBPS/Text/Section0011.xhtml)
- 结论依据:原文明确区分测试是对已知属性做二元验证、实验是产生新认知的探索过程,直接支持卡片对两者区别的概括。
- 原始内容:"在测试中,我们要进行断言:给定一个特定的条件,系统会输出一个特定的结果……这个实践过程并不能让我们发掘出系统未知的或尚不明确的认知,它仅仅是对已知的系统属性可能的取值进行测验。而实验可以产生新的认知……混沌工程是一种帮助我们获得更多的关于系统的新认知的实验方法。"