【问题标题】:How can I replace deprecated method Mockit.setUpMock?如何替换已弃用的方法 Mockit.setUpMock?
【发布时间】:2016-07-25 12:30:32
【问题描述】:

我有一些代码,它使用的是旧版本的 jmockit 库。我发现 Mockit 类的 setUpMock 方法已被弃用,但我在 Jmockit API 文档说明中找不到,如何替换如下代码。

@Test(expected=IllegalArgumentException.class)
public void updateWithBadRownum() throws Exception
{
    Mockit.setUpMock(Tool.class, new MockTool()); //It doesn't support on latest version of jmockit
    Mockit.setUpMock(Criteria.class, new MockCriteria());
    new TaskInitializer().populateSchemas(cnn, 10);
    Map parameters = new HashMap();
    parameters.put("ROWNUM", "abc");
    Assert.assertTrue(4 == StatusUpdaterImpl.execute(parameters));
} 

【问题讨论】:

  • 1.1 版(和其他版本)的 API 文档确实说明了(在旧 API 的弃用 cmets 和新 API 的文档中)如何将 Mockit.setUpMock 等的使用替换为新的 API (MockUp)。
  • 请给我链接好吗?我没有找到cmets
  • 当然。 1.11.21.31.41.5 版本的发行说明都谈到了旧 API 的删除以及要使用的相应新 API。 1.1 版 API 文档中的弃用 cmets 可在 jmockit-1.1-sources.jar 文件中找到,该文件可从 Maven Central 获得。

标签: java unit-testing mocking jmockit


【解决方案1】:

使用Mockup

new MockUp<Tool>() {
    @Mock int someMethod(int i) { assertTrue(i > 0); return 123; }

 };

【讨论】:

    猜你喜欢
    • 2012-10-02
    • 2018-03-30
    • 2020-05-26
    • 2012-09-27
    • 2020-02-27
    • 1970-01-01
    • 2018-07-05
    • 1970-01-01
    相关资源
    最近更新 更多