JUnit @Ignorera testanteckning med exempel
โก Smart sammanfattning
JUnit Ignorera testannotering lรฅter utvecklare hoppa รถver enskilda testmetoder eller hela klasser under byggnationer, vilket tรคcker syntax, orsaker och villkorlig รถverhoppning.pingoch JUnit 5 Migration av funktionshindrade.

Ibland kan du behรถva att inte kรถra en metod/kod eller Testfall eftersom kodning inte gรถrs fullt ut. Fรถr just det testet, JUnit ger @Strunta i anteckning fรถr att hoppa รถver testet.
Vad รคr JUnit @Ignorera testanteckning
@Ignorera testanteckningen anvรคnds fรถr att ignorera sรคrskilda tester eller grupp av tester fรถr att hoppa รถver byggfelet.
@Strunta i annotering kan anvรคndas i tvรฅ scenarier enligt nedan:
- Om du vill ignorera en testmetod, anvรคnd @Ignorera tillsammans med @Test-kommentaren.
- Om du vill ignorera alla klassens tester, anvรคnd @Ignorera annotering pรฅ klassnivรฅ.
Du kan ange orsaken till att ett test inaktiverats i den valfria parametern som tillhandahรฅlls av @Ignorera annotering.
Det kommer att hjรคlpa andra utvecklare som arbetar med samma kod, att fรถrstรฅ "varfรถr ett visst test รคr inaktiverat?" Nรคr problemet med det specifika testet รคr รฅtgรคrdat kan du helt enkelt aktivera det genom att ta bort det @Ignorera anteckning.
Junit Test Exempel โ Ignorera
Som diskuterats i ovanstรฅende definition kan du anvรคnda @Ignorera annotering fรถr att ignorera ett test eller en grupp av testet.
Lรฅt oss fรถrstรฅ det med ett enkelt exempel och i nedanstรฅende scenarier:
- Skapa en enkel testklass utan att ignorera ett test.
- Ignorera en testmetod med @Ignorera annotering.
- Ignorera en testmetod med @Ignorera annotering med rรคtt anledning.
- Ignorera alla testmetoder med @Ignorera annotering.
Skapa en enkel testklass utan att ignorera ett test
Lรฅt oss skapa en enkel Java klass som skriver ut tvรฅ typer av meddelanden.
- Fรถrsta metoden skriver ut ett enkelt meddelande och
- Den andra metoden skriver ut ett "hej"-meddelande
JUnitMessage.java
package guru99.junit; public class JUnitMessage { private String message; public JUnitMessage(String message) { this.message = message; } public String printMessage(){ System.out.println(message); return message; } public String printHiMessage(){ message="Hi!"+ message; System.out.println(message); return message; } }
JunitTestExample.java
Lรฅt oss skapa en JUnit testklass fรถr att testa JUnitMessage.java.
I detta JUnit testklass,
- Fรถrsta testet, som heter "testJUnitMessage()" testar "printMessage()"-metoden av ovanstรฅende klass.
- Pรฅ samma sรคtt det andra testet, som heter "testJUnitHiMessage" testar "testJUnitHiMessageโ av ovanstรฅende klass.
package guru99.junit; import static org.junit.Assert.assertEquals; import org.junit.Test; public class JunitTestExample { public String message = "Guru99"; JUnitMessage junitMessage = new JUnitMessage(message); @Test public void testJUnitMessage() { System.out.println("Junit Message is printing"); assertEquals(message, junitMessage.printMessage()); } @Test public void testJUnitHiMessage() { message="Hi!" +message; System.out.println("Junit Hi Message is printing "); assertEquals(message, junitMessage.printHiMessage()); } }
TestRunner.java
Lรฅt oss skapa en testlรถparklass fรถr att kรถra JunitTestExample.java
package guru99.junit; 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(JunitTestExample.class); for (Failure failure : result.getFailures()) { System.out.println(failure.toString()); } System.out.println("Result=="+result.wasSuccessful()); } }
Produktion:
Skriv ut uttalande pรฅ konsolen:
Junit Hi Message skrivs ut
Hej!Guru99
Junit Message skrivs ut
Guru99
Ignorera en testmetod med @Ignorera annotering
Lรฅt oss skapa ignoreringstest fรถr att inaktivera ett test i exemplet ovan. Fรถr detta mรฅste du anvรคnda @Ignorera i metoden du vill hoppa รถver.
Lรฅt oss gรถra det fรถr testJUnitMessage() frรฅn JunitTestExample.java
JunitTestExample.java
package guru99.junit; import static org.junit.Assert.assertEquals; import org.junit.Ignore; import org.junit.Test; public class JunitTestExample { public String message = "Guru99"; JUnitMessage junitMessage = new JUnitMessage(message); @Ignore @Test public void testJUnitMessage() { System.out.println("Junit Message is printing "); assertEquals(message, junitMessage.printMessage()); } @Test public void testJUnitHiMessage() { message="Hi!" +message; System.out.println("Junit Hi Message is printing "); assertEquals(message, junitMessage.printHiMessage()); } }
Produktion:
Lรฅt oss kรถra och verifiera utdata frรฅn ovanstรฅende exempel.
Nedan utdata visar att ett test har hoppats รถver (inaktiverat), se enligt nedan:
Skriv ut uttalande pรฅ konsolen:
Junit Hi Message skrivs ut
Hej!Guru99
Anvรคnd @ ignorera anteckning med villkor
Lรฅt oss ta exemplet med hur man ignorerar ett test och definierar orsaken till att ignorera tillsammans med det. Som diskuterats ovan, fรถr att ange en orsak har du en valfri parameter i @Ignorera annotering dรคr du kan ange orsaksfรถrklaringen.
JunitTestExample.java
package guru99.junit; import static org.junit.Assert.assertEquals; import org.junit.Ignore; import org.junit.Test; public class JunitTestExample { public String message = "Guru99"; JUnitMessage junitMessage = new JUnitMessage(message); @Ignore("not yet ready , Please ignore.") @Test public void testJUnitMessage() { System.out.println("Junit Message is printing "); assertEquals(message, junitMessage.printMessage()); } @Test public void testJUnitHiMessage() { message="Hi!" +message; System.out.println("Junit Hi Message is printing "); assertEquals(message, junitMessage.printHiMessage()); } }
Produktion:
Samma som ovan.
Ignorera alla testmetoder med @Ignorera annotering.
Som diskuterats ovan fรถr att ignorera alla tester i klassen, mรฅste du anvรคnda @Ignorera annotering pรฅ klassnivรฅ.
Lรฅt oss รคndra ovanstรฅende exempel fรถr att fรถrstรฅ hur man ignorerar alla tester:
package guru99.junit; import static org.junit.Assert.assertEquals; import org.junit.Ignore; import org.junit.Test; @Ignore public class JunitTestExample { public String message = "Guru99"; JUnitMessage junitMessage = new JUnitMessage(message); @Test public void testJUnitMessage() { System.out.println("Junit Message is printing "); assertEquals(message, junitMessage.printMessage()); } @Test public void testJUnitHiMessage() { message="Hi!" +message; System.out.println("Junit Hi Message is printing "); assertEquals(message, junitMessage.printHiMessage()); } }
Utgรฅng:
Skriv ut uttalande pรฅ konsolen:
Eftersom bรฅda testerna hoppade รถver genom att anvรคnda @Ignore pรฅ klassnivรฅ sรฅ skulle inget uttalande skrivas ut pรฅ konsolen.



