我注意到一些单元测试,例如在 spring 框架中,您在其中设置对象和测试但没有显式使用断言方法。
本质上,你有没有异常(exception)。
这是单元测试吗?这是要避免的事情吗? 例如,这里有一些来自 Spring 框架的测试。没有断言子句,只是一个测试。
public void testNeedsJoinPoint() {
mockCollaborator.needsJoinPoint("getAge");
mockControl.replay();
testBeanProxy.getAge();
mockControl.verify();
}
最佳答案
您正在展示的测试充满了期望,但它们是通过模拟对象来表达的。
有些测试可能完全没有断言,但对我来说仍然可以,例如一个简单加载 spring 上下文并(隐式)断言其有效性的测试。我真的认为问题应该是它是否是一个好的测试。有时它可能是,有时它只是你能得到的最好的。有总比没有好。
关于testing - 你能不能在不使用 'assertEquals' 的情况下编写 Junit 样式的单元测试,异常测试失败,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/668933/