我试图找到我的问题的答案,但无法找到工作的东西。我有一个类,这样做
public class LambdaLoggerWrapper {
public LambdaLoggerWrapper(LambdaLogger lambdaLogger){
this.lambdaLogger = lambdaLogger;
}
public void logInfo(String caller, String message){
lambdaLogger.log(message);
}
}
我的测试是
@RunWith(MockitoJUnitRunner.class)
public class LambdaLoggerWrapperTest{
@Mock LambdaLogger mockLambdaLogger;
@Test
public void testLog(){
LambdaLoggerWrapper llw = new LambdaLoggerWrapper(mockLambdaLogger);
//how to test that calling llw.logInfo actually calls lambdaLogger.log with appropriate string?
}
}
我将如何测试调用llw.logInfo是否实际上使用适当的字符串调用了lambdaLogger.log?
2条答案
按热度按时间jdgnovmf1#
在受测试的示例上调用
logInfo()
方法:然后使用
Mockito#verify()
方法Assertmock是用预期的方法和传递给测试方法的参数调用的:c7rzv4ha2#
如果您没有使用Java8,请将其替换为匿名内部类。