前言
没有测试代码的代码都是垃圾。
测试代码作用
测试代码的作用不言而喻,就是测试一下你的程序的正确性,如果你传到个人仓库中的代码并没有测试代码跟着,别的人也不知道你的代码正确与否,那么这个代码就相当于一个死代码,并没有什么用处。甚至可以说,你连自证清白都做不到如何让别人能够信任你的代码。
测试代码设计规则
面向客户的需求,我们先对我们的ADT进行了初步的设计,对于每一个接口中定义的每一个方法设计了比较完备的规约,接下来要做的事情不是怎么去实现,而是要先根据各个方法的规约写出测试代码。
在程序设计中,我们用src来管理存储我们程序的源代码。相应的用test去管理我们对应的测试代码。
要求:对于每一个源代码中的ADT(.class)在test文件夹中都有对应的一个xxxTest.class
每一个测试文件对应一个源文件,每一个源文件中定义的方法,在对应的测试文件中都必须有一个相应的测试方法跟着,用@test
标识测试方法。
在测试方法的内部,我们采用断言形式(assertion)去检查我们的测试结果,至于具体明细,可以去java的jdk文档中。
断言:在开发阶段的代码中嵌入,检验某些“假设”是否 成立。若成立,表明程序运行正常,否则表明存在错
断言即是对代码中程序员所做假设的文档化,也不会影响运行时性能( 在实际使用时,assertion都会被disabled)
同时我们还要写测试策略(test strategy),确保你的测试代码涵盖更多的测试区间,使你的程序能够快速失败(fail fast)。
在测试你的程序的时候多次不过,不要感慨我已经这么努力了为什么还是出现了错误,而是应该侥幸自己在交付客户端之前就发现了代码中的遗留bug,使得自己还能够完善自己的代码,不至于到时候返工。
好了,现在为你写过的程序加上测试代码吧
附图:example,