Exception Junit测试强制异常

Exception Junit测试强制异常,exception,logging,junit,Exception,Logging,Junit,我有以下方法: public Object method(){ try { privatevoidmethod1(); privatevoidmethod2(); } catch(Exception e) { Log.debug(e); } return object; } 如何强制执行异常以便测试调试调用?抛开如何测试调试调用不谈,您通常会通过提供适当的输入来触发异常,以便创建/抛出异常。如果这不合适,替代方案是提供一个已配置/写入以引发异

我有以下方法:

public Object method(){
 try
 {
      privatevoidmethod1();
      privatevoidmethod2();
 }
 catch(Exception e)
 {
      Log.debug(e);
 }
  return object;
}

如何强制执行异常以便测试调试调用?

抛开如何测试调试调用不谈,您通常会通过提供适当的输入来触发异常,以便创建/抛出异常。如果这不合适,替代方案是提供一个已配置/写入以引发异常的替代(模拟)组件,例如

public MyClass(MyInjectedComponent component) {
   this.component = component;
}
您将为测试提供一个
MyInjectedComponent
的实现,该实现将抛出一个异常(用于测试目的)。将组件注入其他组件的方法是值得研究的

我通常会为此使用模拟框架(例如,或类似框架)。然而,上述的一个微不足道的实现可能是:

public class MyImplementationForTesting extends MyInjectedComponent {
   public void method() throws Exception {
      throw new Exception();
   }
}

撇开测试调试调用的方式不谈,您通常会通过提供适当的输入来触发异常,以便创建/抛出异常。如果这不合适,替代方案是提供一个已配置/写入以引发异常的替代(模拟)组件,例如

public MyClass(MyInjectedComponent component) {
   this.component = component;
}
您将为测试提供一个
MyInjectedComponent
的实现,该实现将抛出一个异常(用于测试目的)。将组件注入其他组件的方法是值得研究的

我通常会为此使用模拟框架(例如,或类似框架)。然而,上述的一个微不足道的实现可能是:

public class MyImplementationForTesting extends MyInjectedComponent {
   public void method() throws Exception {
      throw new Exception();
   }
}

撇开测试调试调用的方式不谈,您通常会通过提供适当的输入来触发异常,以便创建/抛出异常。如果这不合适,替代方案是提供一个已配置/写入以引发异常的替代(模拟)组件,例如

public MyClass(MyInjectedComponent component) {
   this.component = component;
}
您将为测试提供一个
MyInjectedComponent
的实现,该实现将抛出一个异常(用于测试目的)。将组件注入其他组件的方法是值得研究的

我通常会为此使用模拟框架(例如,或类似框架)。然而,上述的一个微不足道的实现可能是:

public class MyImplementationForTesting extends MyInjectedComponent {
   public void method() throws Exception {
      throw new Exception();
   }
}

撇开测试调试调用的方式不谈,您通常会通过提供适当的输入来触发异常,以便创建/抛出异常。如果这不合适,替代方案是提供一个已配置/写入以引发异常的替代(模拟)组件,例如

public MyClass(MyInjectedComponent component) {
   this.component = component;
}
您将为测试提供一个
MyInjectedComponent
的实现,该实现将抛出一个异常(用于测试目的)。将组件注入其他组件的方法是值得研究的

我通常会为此使用模拟框架(例如,或类似框架)。然而,上述的一个微不足道的实现可能是:

public class MyImplementationForTesting extends MyInjectedComponent {
   public void method() throws Exception {
      throw new Exception();
   }
}

我确实有一个抛出异常的测试,我可以成功地断言它。但是,如果我需要断言正在调用log语句,该怎么办?我会模拟日志组件并注入itI。我确实有一个抛出异常的测试,并且我可以成功地断言它。但是,如果我需要断言正在调用log语句,该怎么办?我会模拟日志组件并注入itI。我确实有一个抛出异常的测试,并且我可以成功地断言它。但是,如果我需要断言正在调用log语句,该怎么办?我会模拟日志组件并注入itI。我确实有一个抛出异常的测试,并且我可以成功地断言它。但是如果我需要断言正在调用log语句,该怎么办?我会模拟日志组件并注入它