对 API 进行单元测试



我有一个类和一个方法,看起来像这样

class A {
  private RetryLogic logic;
  private Service serviceClient; 
  public A(){
    logic = new RetryLogic();
    serviceClient = new Service();
  }
  public Response methodA() {
    Request request = new Request();
    serviceClient.addRetryLogic(logic);
    Responce response = serviceClient.call(request);
    return response; 
  }
} 

在这种情况下,如果出现服务不可用或任何 HTTP 错误等故障,重试逻辑将重试服务调用。

但是,如果服务被调用并引发任何建模异常,它不会重试。

如果我正在为 methodA 编写单元测试,是否适合(或者我应该关注)通过添加一个模拟 HTTP 异常并检查重试是否有效的测试来测试重试逻辑?

RetryLogic基本上是一个不属于我的不同包。

你会

测试Apache Commons HttpClientsetConnectionTimeout吗?还是你JDBC ClientsetAutoCommit?我不会。

如果您信任该Service就像信任其余依赖项一样,那么测试它是没有意义的。试想一下,有 1000 名开发人员使用 Service ,并且他们都在测试重试功能......这有点浪费时间,不是吗?

相关内容

  • 没有找到相关文章

最新更新