我的团队正在努力教育我们的一些开发人员进行测试。他们明白为什么要写测试,并且在写测试的时候,他们应该写测试,但在编写好的测试方面有点欠缺。让JUnit失败,实际上并没有运行断言的测试
我刚才看到一个犯这样
public void SomeTest{
@Test
public void testSomething{
System.out.println(new mySomething.getData());
}
所以他们至少确保他们的代码给了他们通过寻找预期的输出。
在我们能真正推销代码评论的想法之前,与此同时,我正在考虑让JUnit在任何没有实际assertXXX或失败语句的测试中失败。然后,我想让这个失败消息说“你的测试应该使用断言并且实际检查输出!”。
我完全期待这导致像assertTrue(1 == 1);
这样的电话。我们正在帮助团队进行正确的测试和代码审查,是否有任何技术机制可以帮助已经获得它的开发人员简化生活?那些帮助新人理解的技术机制呢?
我和你一起让人们购买并接受教育。我正在寻找更多工具来帮助其他开发人员,并监视代码,以便当我们发现一个不好的测试时,我们可以将其标记出来并与仍在学习的人交谈。 – Freiheit 2011-02-25 17:22:56