assertions java java assert tutorial with code examples
Denna Java Assert-handledning Förklarar allt om påståenden i Java. Du lär dig att aktivera och inaktivera påståenden, hur du använder påståenden, hävdar exempel, etc.:
I våra tidigare handledning har vi redan diskuterat undantag i Java. Det här är felen som fångas vid körning. I likhet med undantag finns det några andra konstruktioner som vi kan använda vid sammanställningstid för att testa korrektheten av koden. Dessa konstruktioner kallas 'påståenden'.
I denna handledning kommer vi att diskutera påståenden i Java i detalj. Vi kan definiera en påstående som en konstruktion som gör att vi kan testa riktigheten eller tydligheten i antagandena i vårt Java-program.
=> Ta en titt på Java-nybörjarguiden här.
Vad du kommer att lära dig:
Påståenden i Java
Således när vi utför påståenden i ett program antas det vara sant. Om det blir falskt eller misslyckas kommer JVM att kasta en AssertionError.
Vi använder påståenden under utvecklingen för teständamål. Vid körning inaktiveras påståenden av Java.
Hur skiljer sig påståenden från normala undantag?
Till skillnad från normala undantag är påståenden huvudsakligen användbara för att kontrollera de logiska situationerna i ett program som vi tvivlar på. I motsats till normala undantag som också kan kastas vid körning är påståenden inaktiverade vid körning.
Påståenden kan användas på de platser i koden där utvecklaren har maximal kontroll som om de kan användas som parametrar för privata metoder. Påståenden kan också användas med villkorliga fall. På samma sätt kan förhållanden i början av vilken metod som helst innehålla påståenden.
Påståenden bör dock inte tas som en ersättning för felmeddelanden. Varken påståendena ska användas i offentliga metoder, till exempel, för att kontrollera argument. Viktigast av allt bör vi inte använda påståenden om kommandoradsargument i Java.
På Java är påståenden inaktiverade som standard. Så för att påståenden ska fungera i ett Java-program måste vi först aktivera påståendena.
Aktivera påståenden i Java
För att aktivera påståenden måste vi göra det från kommandoraden.
Följande är den allmänna syntaxen för att aktivera påstående i Java.
java –ea: arguments
eller
java –enableassertions: arguments
Som ett exempel kan vi aktivera påståenden för en viss klass som visas nedan:
java –ea TestProgram
eller
java –enableassertions TestProgram
Här är TestProgram en klass för vilken påståendet ska aktiveras.
När villkoret är sant i påståendeförklaringen i programmet och påståenden är aktiverade, körs programmet normalt. När villkoret är falskt och påståenden är aktiverade, kastar programmet AssertionError och programmet stannar.
Det finns olika variationer för att aktivera påståenden med hjälp av kommandoraden.
# 1) java –ea
När ovanstående kommando ges på kommandoraden aktiveras påståendena i alla klasser utom för systemklasser.
# 2) java –ea Main
Ovanstående kommando möjliggör påstående för alla klasser i huvudprogrammet.
# 3) java –ea TestClass Main
Detta kommando möjliggör påståenden för endast en klass - 'TestClass' i huvudprogrammet.
# 4) java –ea com.packageName ... Main
Ovanstående kommando möjliggör påstående för paketet com.packageName och dess underpaket i huvudprogrammet.
# 5) java –ea ... Main
Aktiverar påstående för det namnlösa paketet i den aktuella arbetskatalogen.
# 6) java –esa: argument ELLER java –aktiverar systemåtgärder: argument
Ovanstående kommando möjliggör påståenden för systemklasserna.
Inaktiverar påståenden
Vi kan också inaktivera påståenden via kommandoraden.
Den allmänna syntaxen för att inaktivera påståenden i Java är:
java –da arguments
ELLER
java –disableassertions arguments
På samma sätt som att inaktivera påståenden i systemklasser använder vi följande syntax:
java – dsa: arguments
ELLER
java –disablesystemassertions:arguments
'Hävda' nyckelord i Java
Java-språket tillhandahåller nyckelordet 'assert' som gör det möjligt för utvecklare att verifiera antagandena för programmet eller tillståndet för programmet.
Så vi kan använda nyckelordet 'assert' för att ge påståenden i Java för att verifiera förhållanden som annars skulle kunna förhindra att programmet fungerar smidigt.
Windows 10 standardgateway inte tillgänglig
Nyckelordet 'assert' används från Java 1.4 men förblir det lite kända nyckelordet i Java. När vi använder assert-nyckelordet i Java måste vi göra det i ett Assert-uttalande.
Påståendeanmälan i Java
I Java börjar påståendebefordran med nyckelordet 'tillgång' följt av ett booleskt uttryck.
Påståendet i Java kan skrivas på två sätt:
- hävda uttryck;
- hävda expression1: expression2;
I båda tillvägagångssätten är de uttryck som används med nyckelordet Assert de booleska uttrycken.
Tänk på följande uttalande som ett exempel.
assert value >= 10 : “greater than 10”;
Här kontrollerar påståendet om ett villkor och om villkoret är sant skrivs ett meddelande ut. Således kan vi också ha påståenden med vårt budskap.
Hur man använder Assert i Java
Hittills har vi diskuterat assert-nyckelordet och assert-uttalandet i Java. Låt oss nu överväga ett exempel för att visa hur man använder assert i Java.
För att lägga till påståenden måste vi helt enkelt lägga till ett påstående på följande sätt:
public void setup_connetion () { Connection conn = getConnection (); assert conn != null; }
Vi kan också ge ovanstående påståenden annorlunda som visas nedan:
public void setup_connection () { Connection conn = getConnection (); assert conn != null: “Connection is null”; }
Båda ovanstående kodkonstruktioner kontrollerar om anslutningen returnerar ett icke-nollvärde. Om det returnerar ett nollvärde kommer JVM att kasta ett fel - AssertionError. Men i det andra fallet tillhandahålls ett meddelande i påståendeförklaringen så detta meddelande kommer att användas för att konstruera AssertionError.
I det andra fallet med påståenden aktiverade kommer undantaget att se ut:
Exception in thread 'main' java.lang.AssertionError: Connection is null at line numbers…
Påståendexempel i Java
Låt oss implementera ett exempel på hur du använder Assertions i Java.
public class Main { public static void main(String() args) { try { System.out.println('Testing Assertions...'); assert true : 'We don't see this.'; assert false : 'Visible if assertions are ON.'; } catch (AssertionError e) { e.printStackTrace(); } } }
Produktion
Ovanstående utdata ges när påståendena inte är aktiverade. Om påståendet var aktiverat visas det andra meddelandet (påstå falskt).
Låt oss nu demonstrera ett annat exempel . Observera att här har vi aktiverat påståendet i Java på vår maskin där vi kör programmet.
class Main { public static void main(String args()) { String() weekends = {'Friday', 'Saturday', 'Sunday'}; assert weekends.length == 2; System.out.println('We have ' + weekends.length + ' weekend days in a week'); } }
Produktion
Eftersom helglängden inte överensstämmer med den längd som anges i påståendet, kastas ovanstående undantag. Om påståendet var inaktiverat skulle programmet ha visat det angivna meddelandet istället för påstått undantag.
Varför används påståenden i Java?
Vi använder påståenden i vårt Java-program för att se till att antagandena vi har gjort i vårt program är korrekta.
Till exempel, om vi vill se till att koden som verkar vara oåtkomlig verkligen inte kan nås. Eller så vill vi se till att alla variabler har ett värde inom ett angivet intervall.
När vi gör ett sådant antagande ger vi påståenden för att se till att de verkligen är korrekta.
Vanliga frågor
F # 1) Kasta assert ett undantag Java?
Svar: Assert kastar vanligtvis “AssertionError” när antagandet är felaktigt. AssertionError sträcker sig från felklassen (som slutligen sträcker sig från Throwable).
F # 2) Vad händer när en påstående misslyckas i Java?
Svar: Om påståenden är aktiverade för det program där påståendet misslyckas, kommer det att kasta AssertionError.
F # 3) Vad returnerar en påstående i Java?
Svar: Ett påståendeförklaring förklarar ett booleskt tillstånd som förväntas inträffa i ett program. Om detta booleska villkor utvärderas till falskt ges en AssertionError vid körning förutsatt att påståendet är aktiverat.
Om antagandet är korrekt kommer det booleska villkoret att bli sant.
F # 4) Kan vi fånga påståendefelet?
Svar: AssertionError som kastas av påståendet är ett okontrollerat undantag som utökar felklassen. Påståenden krävs således inte för att deklarera dem uttryckligen och det finns heller inget behov av att försöka fånga dem.
F # 5) Hur hävdar du ett undantag?
Svar: För att hävda ett undantag förklarar vi ett objekt för ExpectedException enligt följande:
public ExpectedException exception = ExpectedException. ingen ();
Sedan använder vi det förväntade () och förvänta meddelande () -metoderna i testmetoden för att hävda undantaget och ge undantagsmeddelandet.
Slutsats
Med detta har vi avslutat denna handledning om påståenden i Java. Vi har diskuterat definitionen och syftet med påståenden i Java. För att använda påstående i Java-programmet måste vi först aktivera dem att använda kommandoraden.
Vi undersökte de olika sätten på vilka vi kan aktivera påståenden på programnivå, paketnivå, katalognivå osv. Påståendet om nyckelord och påståenden i Java och deras detaljerade syntax med programmeringsexempel diskuterades. Påståendens nyckelord och tillgångsuttalanden hjälper oss att använda påståenden.
Vi såg att en påstående fel ges när ett påstående misslyckas. Påståenden i Java används mest vid sammanställningstid och de är som standard inaktiverade vid körning.
Vidare används påståenden mestadels i JUnit-ramverket för Java där vi skriver testfall till testapplikationer.
=> Läs igenom Easy Java Training Series.
Rekommenderad läsning
- Påståenden i selen med Junit och TestNG Frameworks
- Exempel på påståenden av selen - praktiska tillämpningar i projekt
- Påstående i SOAtest med ett exempel på XML-kod
- C ++ Assert (): Påståendehantering i C ++ med exempel
- Förstå påståenden i SoapUI - SoapUI Tutorial # 5
- JAVA-handledning för nybörjare: 100+ praktiska Java-videohandledning
- Jagged Array In Java - Handledning med exempel
- Java datatyper, loopar, arrays, switch och påståenden