JUnit-忽略测试

时间:2020-04-19
本文章向大家介绍JUnit-忽略测试,主要包括JUnit-忽略测试使用实例、应用技巧、基本知识点总结和需要注意事项,具有一定的参考价值,需要的朋友可以参考一下。

JUnit-忽略测试

有时可能会发生我们的代码还没有准备好的情况,这时测试用例去测试这个方法或代码的时候会造成失败。@Ignore 注释可以解决这种情况。

  • 一个含有 @Ignore 注释的测试方法将不会被执行。
  • 如果一个测试类有 @Ignore 注释,则它的测试方法将不会执行。




创建一个MessageUtil.java类

package 忽略测试;

public class MessageUtil {

    private String message;

    MessageUtil(String message){
        this.message = message;

    }

//    打印message
    public String printMessage(){
        System.out.println("MessageUtil类中printMessage()方法中的输出信息:"+message);
        return message;
    }

//    打印添加内容后的message
    public String salutationMessage(){
        message = "Add"+message;
        System.out.println("MessageUtil类中salutationMessage()方法中的输出信息:"+message);
        return message;
    }

}




创建一个测试类TestJunit.java

  • 在类中加入测试方法 testPrintMessage() 和 testSalutationMessage()。
  • 在方法 testPrintMessage() 中加入 @Ignore 注释。
package 忽略测试;


import org.junit.Ignore;
import org.junit.Test;

import static org.junit.Assert.assertEquals;

public class TestJunit {
    String message = "测试信息";
    MessageUtil messageUtil = new MessageUtil(message);

    @Ignore
    @Test
    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());
    }
}




最后的测试结果可以看到测试方法 testPrintMessage()没有被执行

原文地址:https://www.cnblogs.com/lyd447113735/p/12731882.html