如何接受JMockit中的任何方法调用?

发布于 2024-12-11 08:28:13 字数 226 浏览 0 评论 0原文

我有类似以下代码的内容:

public void f() {
    logger.info("some string");
}

如何在 JMockit 中指定允许对记录器的任何调用?例如,如果有人将记录器调用更改为:

    logger.finest("some string");

测试仍应通过。

I have something like the following code:

public void f() {
    logger.info("some string");
}

How would I specify in JMockit that any call to logger is allowed? For example, if someone changed the logger call to:

    logger.finest("some string");

the test should still pass.

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

旧人九事 2024-12-18 08:28:13

您可以按照 http://jmockit 创建一个存根模拟类.googlecode.com/svn/trunk/www/tutorial/StateBasedTesting.html

@MockClass(realClass = Logger.class, stubs = "", inverse = true)
static class MockLoggerStub { }

然后在运行测试之前调用它:

Mockit.setUpMocks(MockLoggerStub.class);

这将完全消除测试的 Logger 类。

You could create an stubbed-out mock class, as per http://jmockit.googlecode.com/svn/trunk/www/tutorial/StateBasedTesting.html:

@MockClass(realClass = Logger.class, stubs = "", inverse = true)
static class MockLoggerStub { }

Then just call this before running your test:

Mockit.setUpMocks(MockLoggerStub.class);

This will completely stub out the Logger class for your test.

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文