知识卡片
测试外置契约
内容
单元测试从类外部验证后置条件和惩罚,让生产代码保持简洁,同时用可重复输入建立可靠性信心。发散:测试不是断言的替代品,而是把契约执行从运行时监控转成开发期验证。
参考来源
- 位置:《你真的会写代码吗-2021》第6章《别对我撒谎:通过测试保证可靠性》"6.1.2 测试和契约式设计"(源文件:_epub-src/OEBPS/Text/0016.xhtml)
- 结论依据:原文明确"测试将不变式和后置条件检查移到了类本身之外。这是一个非常方便的选择,可以使类保持小而简单",并说明测试的第二个优点是"迫使你主导这个过程,用覆盖率指标来支持你对SUT的正确性和稳健性的信心",即用可重复输入建立信心。
- 原始内容:测试将不变式和后置条件检查移到了类本身之外。这是一个非常方便的选择,可以使类保持小而简单,并且在类和类之间、开发人员相互之间明确区分职责……测试会让你仔细设计将要提供给SUT的一组输入值……测试迫使你主导这个过程,用覆盖率指标来支持你对SUT的正确性和稳健性的信心。