代码之家  ›  专栏  ›  技术社区  ›  Hash

JUnit测试自定义异常[重复]

  •  11
  • Hash  · 技术社区  · 11 年前

    我正在使用JUnit,不太确定如何测试自定义异常类。我创造了,

    public class CustomException extends Exception {
    
        //@param message is the exception message
    
        public CustomException(final String message) {
            super(message);
        }
    
        //@param message is the exception message
        //@param cause is the cause of the original exception
    
        public CustomException(final String message, final Throwable cause) {
            super(message, cause);
        }
    }
    

    主类将有许多尝试捕获,例如:

    catch (ParseException e) {
    
        throw new CustomException("Date format incorerect", e);
    

    我不知道如何为它编写测试类。

    2 回复  |  直到 5 年前
        1
  •  15
  •   Vidya    11 年前

    page 应该告诉你你需要知道的一切。对于最简单的情况,也就是你的情况,只需这样做:

    @Test(expected= CustomException.class) 
    public void myTest() { 
      MyObject obj = new MyObject();
      obj.doSomethingThatMightThrowCustomException(); 
    } 
    
        2
  •  0
  •   Morgoth jsbueno    8 年前

    我希望这能对你有所帮助。

    public class YourTestClass
    {
        @Test
        public void yourTestMethodName() throws CustomeException {
            //your logic goes here.
            if (condition) {
               throw new CustomeException(<Message to display while throwing an error>);
            }
        }
    }
    

    您也可以尝试以下网站 http://junit.sourceforge.net/javadoc/org/junit/Test.html