模拟 JUnit 构造函数的最佳方法是什么?



我有一个需要测试的integrator类,该类构造函数实例化了一个服务客户端。由于服务客户端是一个外部依赖项,我想测试集成商的个人责任。代码如下所示。

public class Integrator {
    Client client;
    public Integrator() {
      client = new RemoteClient();
    }
    public String invokeClient() {
      ....
    }
}

嘲笑这件事的最佳方式是什么?此外,我需要确保代码覆盖率。

使用依赖注入,这样就不会创建客户端:

public Integrator(Client client) {
    //... argument checking omitted
    this.client = client;
}

现在,您的测试可以创建可以直接传入的模拟客户端。

您仍然可以保留无参数构造函数:

public Integrator() {
  this(new RemoteClient());
}

相关内容

  • 没有找到相关文章

最新更新