因此,如何更好而高效地进行单元测试也是我时常思考的一个问题。
根据DbC(Design by Contract)——契约式设计的原则来进行单元测试是不是一个更好的路子呢?我觉得这是可行的,原因如下:
一、 诸如JUnit、NUnit之类的单元测试工具已经提供了用于测试框架的断言(Assert)系统,使用这些断言系统为实现在单元测试
的代码系统实现DbC 提供了起码的基础,因为DbC也是以在代码加入各种断言来实现所谓的Pre-Condition、Post-Condition、
Invariant。
二、在一些不直接支持DbC的语言中,如C++、Java、C#,实现DbC很困难,可以在这些代码的测试中进行DbC的实践不失为一种补救措施。