有时可能会发生我们的代码还没有准备好的情况,这时测试用例去测试这个方法或代码的时候会造成失败。@Ignore 注释会在这种情况时帮助我们。
现在我们用例子来学习 @Ignore。
/* |
* This class prints the given message on console. |
*/ |
public class MessageUtil { |
private String message; |
//Constructor |
//@param message to be printed |
public MessageUtil(String message){ |
this.message = message; |
} |
// prints the message |
public String printMessage(){ |
System.out.println(message); |
return message; |
} |
// add "Hi!" to the message |
public String salutationMessage(){ |
message = "Hi!" + message; |
System.out.println(message); |
return message; |
} |
} |
在目录 C:\ > JUNIT_WORKSPACE 中创建一个 java 类文件命名为 TestJunit.java
import org.junit.Test; |
import org.junit.Ignore; |
import static org.junit.Assert.assertEquals; |
public class TestJunit { |
String message = "Robert"; |
MessageUtil messageUtil = new MessageUtil(message); |
@Ignore |
@Test |
public void testPrintMessage() { |
System.out.println("Inside testPrintMessage()"); |
message = "Robert"; |
assertEquals(message,messageUtil.printMessage()); |
} |
@Test |
public void testSalutationMessage() { |
System.out.println("Inside testSalutationMessage()"); |
message = "Hi!" + "Robert"; |
assertEquals(message,messageUtil.salutationMessage()); |
} |
} |
在目录 C:\ > JUNIT_WORKSPACE 创建一个 java 类文件叫做 TestRunner.java 来执行测试用例。
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()); |
} |
} |
C:\JUNIT_WORKSPACE>javac MessageUtil.java TestJunit.java TestRunner.java |
C:\JUNIT_WORKSPACE>java TestRunner |
Inside testSalutationMessage() |
Hi!Robert |
true |
import org.junit.Test; |
import org.junit.Ignore; |
import static org.junit.Assert.assertEquals; |
@Ignore |
public class TestJunit { |
String message = "Robert"; |
MessageUtil messageUtil = new MessageUtil(message); |
@Test |
public void testPrintMessage() { |
System.out.println("Inside testPrintMessage()"); |
message = "Robert"; |
assertEquals(message,messageUtil.printMessage()); |
} |
@Test |
public void testSalutationMessage() { |
System.out.println("Inside testSalutationMessage()"); |
message = "Hi!" + "Robert"; |
assertEquals(message,messageUtil.salutationMessage()); |
} |
} |
C:\JUNIT_WORKSPACE>javac TestJunit.java |
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()); |
} |
} |
C:\JUNIT_WORKSPACE>java TestRunner |
true |