在类的JavaDoc中包含(单元)测试类的链接是好的还是应该是好的?
到目前为止我还没有看到这个,但是在类和测试类之间跳转时发现它非常有用。我也认为测试用例为类的使用提供了很好的例子。
反对在JavaDoc中链接测试用例有哪些论据?
答案 0 :(得分:3)
绝对不良好做法。
原因很简单:生产代码的责任在于其“生产工作”。生产代码不负责提供有关您的测试设置的信息!有时,实用有一个受包保护的方法,允许您检查对象的内部状态 - 使单元测试更容易。但这样做可以使测试更容易/可能。含义:这样的事情是可以接受的(当不是过分的时候) - 但这个想法不是。
即使你忽略了这一点:“标准”做法是让你的单元测试在一个独特的单独的包中。因此,您有两个项目prod
,其中包含类/包“x.y.Z”,而test
包含“x.y.ZTest”。并且:当然应该仅从test
到prod
的依赖关系 - 但不是在另一个方向。并且javadoc中的“真正链接”(如{@link SomeClass}
)将要求您具有此类依赖性。您无法链接到项目设置中编译器无法解析的类!
除此之外:如果您按照上面推荐的项目布局,那么总是知道:“如果有Z类测试 - 则此测试应命名为ZTest”。任何体面的想法都会为你找到ZTest。
换句话说:当我想在eclipse中查看类的测试时,我只需双击类名(以选择该名称);然后我按下“ctrl-shift-t”(打开类型)...... eclipse向我展示了两个类:Z和ZTest。
长话短说:不要使用不属于那里的信息来污染您的生产代码 - 请确保您遵循标准程序并手头有工具来解决此类问题。 clean code 之所以重要:人们必须明白源代码中每个行代表成本。必须修复错误或增强功能的人必须阅读该行(可能经常)。因此:任何不支持班级核心职责的事情都不应该存在。