gpt4 book ai didi

java - 为什么这个 EasyMock 测试失败?

转载 作者:行者123 更新时间:2023-12-02 08:21:24 25 4
gpt4 key购买 nike

嗨,我下面的测试失败了,并给了我这个错误,失败是在验证上...但我不明白为什么。

java.lang.AssertionError: Expectation failure on verify: debug(isA(java.lang.Object)): expected: 1, actual: 0

测试代码是这样的。

   public void testLogInfo()
{
JDBCAppender jdbcAppender = createNiceMock(JDBCAppender.class);
Logger logger = createNiceMock(Logger.class);
LogDB logDB = new LogDB(null, null, null, LogDBDriver.ODBC, Level.TRACE);
logDB.setJdbcAppender(jdbcAppender);
logDB.setLogger(logger);
// method call
logger.info(isA(Object.class));
expectLastCall().once();
// replay
replay(logger);
replay(jdbcAppender);
// verify method call
logDB.log(Level.INFO, "10", "Server", "admin", "shortext", "longText","className","methodName");
verify(logger);
}

最佳答案

刚刚发现问题所在。

调用 LogDB.log 的方法不是调用 Logger.info(Object),而是调用 Logger.log(Priority, Object)。

这就是为什么重播后,状态不一样,因为它期待一种调用并接收另一种调用。

关于java - 为什么这个 EasyMock 测试失败?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5397954/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com