• JUnit-异常测试


    JUnit-异常测试

    Junit 用代码处理提供了一个追踪异常的选项。你可以测试代码是否它抛出了想要得到的异常。expected 参数和 @Test 注释一起使用。




    创建一个MessageUtil.java类,在里面的其中一个方法中手动写一个错误:比如分母为0的一个分式

    package 异常测试;
    
    public class MessageUtil {
    
        private String message;
    
        MessageUtil(String message){
            this.message = message;
    
        }
    
    //    打印message
        public String printMessage(){
            System.out.println("MessageUtil类中printMessage()方法中的输出信息:"+message);
            int a=0;
            int b = 1/a;
            return message;
        }
    
    //    打印添加内容后的message
        public String salutationMessage(){
            message = "Add"+message;
            System.out.println("MessageUtil类中salutationMessage()方法中的输出信息:"+message);
            return message;
        }
    
    }
    
    




    创建一个测试类TestJunit.java

    • 给 testPrintMessage() 测试用例添加需要的异常 ArithmeticException。
    package 异常测试;
    
    
    import org.junit.Test;
    
    import static org.junit.Assert.assertEquals;
    
    public class TestJunit {
        String message = "测试信息";
        MessageUtil messageUtil = new MessageUtil(message);
    
    
        @Test(expected = ArithmeticException.class)
        public void testPrintMessage() {
            System.out.println("对PrintMessage()方法返回的值进行测试");
            assertEquals(message,messageUtil.printMessage());
        }
    
        @Test
        public void testsalutationMessage(){
            System.out.println("对salutationMessage()方法返回的值进行测试");
            message = "Add"+message;
            assertEquals(message,messageUtil.salutationMessage());
        }
    }
    
    




    创建一个TestRunner.java类执行测试用例

    package 异常测试;
    
    import org.junit.runner.JUnitCore;
    import org.junit.runner.Result;
    import org.junit.runner.notification.Failure;
    
    
    public class TestRunner {
        public static void main(String[] args) {
            Result result = JUnitCore.runClasses(TestJunit.class);
    
            for(Failure failure:result.getFailures()){
                System.out.println(failure.toString());
            }
            System.out.println(result.wasSuccessful());
        }
    }
    
    




    可以看到添加了测试用例需要的异常后,即使用例中有错误,也能正常通过测试




    现在将TestJunit.java中添加的异常 ArithmeticException去掉,再看下执行效果,可以看到出现异常测试,测试用例里的错误显示出来了

  • 相关阅读:
    AjaxMethod js调用后台方法
    鼠标点击清空文本框 失去焦点显示提示信息
    js屏蔽BackSpace 返回上一页
    IE8标准模式打开网页
    Windows无法启动SQL server 代理服务(位于本地计算机上)错误1067:进程意外终止
    遍历枚举,添加进DropDownist
    文本框只能输入数字
    个人开发框架总结(五)
    从Power Design设计文档中提取Model
    FaibClass.WebControls控件详解(一)
  • 原文地址:https://www.cnblogs.com/lyd447113735/p/12730572.html
Copyright © 2020-2023  润新知