是否可以将来自底层方法的预期响应“提供”到 JUnit 中的测试类?当然,您可以在if
代码“正在测试”的情况下使用 -statements 执行其他操作或引入额外的对象包,将请求转发给对象(正常操作)或执行“其他操作”,但是它会留下臭代码和额外错误的感觉。有没有更好的方法可以让测试代码真正脱离程序代码?
我想像ifClassUnderTest.doSomething()
调用ClassB.getValue(key)
根本不调用该函数,而是将值foo
作为ClassB.getValue()
back toClassUnderTest.doSomething()
的虚构返回值?可以通过某种方式完成吗?我可以稍后访问“密钥”以查看我的方法是否提出了正确的问题?(见:我不想测试ClassB
这里的功能,只是`doSomething()̀方法本身。)