assertions java java assert tutorial with code examples
Bu Java Assert Tutorial, Java'daki Assertions hakkında her şeyi açıklar. İddiaları Etkinleştirmeyi ve Devre Dışı Bırakmayı, İddiaların nasıl kullanılacağını, İddia Örneklerini vb. Öğreneceksiniz:
Daha önceki eğitimlerimizde, Java'daki istisnaları zaten tartışmıştık. Bunlar, çalışma zamanında yakalanan hatalardır. İstisnalara benzer şekilde, kodun doğruluğunu test etmek için derleme zamanında kullanabileceğimiz başka yapılar da vardır. Bu yapılar 'İddialar' olarak adlandırılır.
Bu eğitimde, Java'daki İddiaları ayrıntılı olarak tartışacağız. Bir İddiayı, Java programımızda yaptığımız varsayımların doğruluğunu veya netliğini test etmemize izin veren bir yapı olarak tanımlayabiliriz.
=> Java Yeni Başlayanlar Kılavuzuna Bir Göz Atın.
Ne öğreneceksin:
Java'daki İddialar
Bu nedenle, bir programda iddia yürüttüğümüzde, bunun doğru olduğu varsayılır. Yanlış olursa veya başarısız olursa, JVM bir AssertionError atar.
Geliştirme sırasında iddiaları test amacıyla kullanırız. Çalışma zamanında, iddialar Java tarafından devre dışı bırakılır.
İddiaların normal istisnalardan farkı nedir?
Normal istisnalardan farklı olarak, İddia'lar esasen şüphelerimizin olduğu bir programdaki mantıksal durumları kontrol etmek için kullanışlıdır. Ayrıca çalışma zamanında atılabilen normal istisnaların aksine, çalışma zamanında onaylamalar devre dışı bırakılır.
İddialar, özel yöntemlere parametre olarak kullanılabilecekleri gibi, geliştiricinin maksimum kontrole sahip olduğu kod içerisinde kullanılabilir. İddialar, koşullu durumlarda da kullanılabilir. Benzer şekilde, herhangi bir yöntemin başlangıcındaki koşullar iddialar içerebilir.
Ancak iddialar hata mesajlarının yerine geçmemelidir. Kamuya açık yöntemlerde iddialar kullanılmamalıdır, Örneğin, argümanları kontrol etmek için. En önemlisi, Java'daki komut satırı argümanlarında iddiaları kullanmamalıyız.
Java'da iddialar varsayılan olarak devre dışıdır. Bu nedenle, iddiaların bir Java programında çalışması için, önce iddiaları etkinleştirmemiz gerekir.
Java'da Onaylamayı Etkinleştir
İddiaları etkinleştirmek için bunu komut satırından yapmalıyız.
Aşağıda, Java'da Onaylamayı etkinleştirmek için genel sözdizimi verilmiştir.
java –ea: arguments
veya
java –enableassertions: arguments
Örnek olarak, aşağıda gösterildiği gibi belirli bir sınıf için iddiaları etkinleştirebiliriz:
java –ea TestProgram
veya
java –enableassertions TestProgram
Burada TestProgram, onaylamanın etkinleştirileceği bir sınıftır.
Programdaki assert deyimindeki koşul doğru olduğunda ve iddialar etkinleştirildiğinde, program normal şekilde çalışacaktır. Koşul yanlış olduğunda ve onaylar etkinleştirildiğinde, program AssertionError'ı atar ve program durur.
en iyi işletim sistemi nedir
Komut satırını kullanarak iddiaları etkinleştirmenin çeşitli varyasyonları vardır.
# 1) java –ea
Yukarıdaki komut komut satırında verildiğinde, sistem sınıfları dışındaki tüm sınıflarda iddialar etkinleştirilir.
# 2) java –ea Ana
Yukarıdaki komut, Ana programdaki tüm sınıflar için onaylamayı etkinleştirir.
# 3) java –ea TestClass Ana
Bu komut yalnızca bir sınıf için iddiaları etkinleştirir - Ana programdaki 'TestClass'.
# 4) java –ea com.packageName… Ana
Yukarıdaki komut, Main programındaki com.packageName paketi ve alt paketleri için onaylamayı etkinleştirir.
# 5) java –ea… Ana
Geçerli çalışma dizinindeki adsız paket için onaylamayı etkinleştirir.
# 6) java –esa: argümanlar VEYA java –enablesystemassertions: argümanlar
Yukarıdaki komut, sistem sınıfları için iddiaları etkinleştirir.
Onayları Devre Dışı Bırakma
İddiaları komut satırından da devre dışı bırakabiliriz.
Java'da iddiaları devre dışı bırakmak için genel sözdizimi şöyledir:
java –da arguments
VEYA
java –disableassertions arguments
Benzer şekilde, Sistem sınıflarındaki iddiaları devre dışı bırakmak için aşağıdaki sözdizimini kullanırız:
java – dsa: arguments
VEYA
java –disablesystemassertions:arguments
Java'da Anahtar Kelime 'onaylamak'
Java dili, geliştiricilerin program veya programın durumu için yaptıkları varsayımları doğrulamalarına olanak tanıyan 'assert' anahtar kelimesini sağlar.
Bu nedenle, Java'da programın düzgün çalışmasını engelleyebilecek koşulları doğrulamak için 'assert' anahtar sözcüğünü kullanabiliriz.
'Assert' anahtar sözcüğü Java 1.4'te kullanılır, ancak Java'da az bilinen anahtar sözcük olarak kalır. Java'da assert anahtar sözcüğünü kullandığımızda, bunu bir Assert deyiminde yapmalıyız.
Java'da Assert İfadesi
Java'da assert ifadesi 'varlık' anahtar kelimesiyle başlar ve ardından bir Boole ifadesi gelir.
Java'daki assert ifadesi iki şekilde yazılabilir:
- ifade iddia etmek;
- ifade1 iddiası: ifade2;
Her iki yaklaşımda da Assert anahtar sözcüğü ile kullanılan ifadeler Boole ifadeleridir.
Aşağıdaki ifadeyi bir örnek olarak düşünün.
assert value >= 10 : “greater than 10”;
Burada assert ifadesi bir koşulu kontrol eder ve koşul doğruysa bir mesaj yazdırılır. Böylece mesajımızla da iddialara sahip olabiliriz.
Java'da Assert Nasıl Kullanılır
Şimdiye kadar, Java'daki assert anahtar sözcüğü ve assert ifadesini tartıştık. Şimdi, java'da assert'in nasıl kullanılacağını göstermek için bir örnek ele alalım.
İddia eklemek için, aşağıdaki gibi bir assert ifadesi eklememiz gerekir:
public void setup_connetion () { Connection conn = getConnection (); assert conn != null; }
Yukarıdaki iddiayı aşağıda gösterildiği gibi farklı şekilde de verebiliriz:
public void setup_connection () { Connection conn = getConnection (); assert conn != null: “Connection is null”; }
Yukarıdaki kod yapılarının her ikisi de bağlantının boş olmayan bir değer döndürüp döndürmediğini kontrol eder. Boş bir değer döndürürse, JVM bir hata - AssertionError atacaktır. Ancak ikinci durumda, assert ifadesinde bir mesaj sağlanır, böylece bu mesaj AssertionError'ı oluşturmak için kullanılır.
Onayların etkin olduğu ikinci durumda, istisna şöyle görünecektir:
Exception in thread 'main' java.lang.AssertionError: Connection is null at line numbers…
Java'da Örnek İddia
Java'da İddia kullanımının bir örneğini uygulayalım.
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(); } } }
Çıktı
Yukarıdaki çıktı, iddialar etkinleştirilmediğinde verilir. İddia etkinleştirildiyse, ikinci mesaj (assert false) görüntülenecektir.
Şimdi başka bir örnek gösterelim . Burada, bu programı çalıştırdığımız makinemizde Java'daki iddiayı etkinleştirdiğimize dikkat edin.
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'); } }
Çıktı
Hafta sonu uzunluğu assert ifadesinde belirtilen uzunlukla eşleşmediğinden, yukarıdaki istisna atılır. İddia devre dışı bırakıldıysa, program istisna iddiası yerine belirtilen mesajı görüntülerdi.
İddialar Java'da Neden Kullanılır?
Programımızda yaptığımız varsayımların doğru olduğundan emin olmak için Java programımızdaki iddiaları kullanırız.
Örneğin, Ulaşılamaz görünen kodun gerçekten erişilemez olduğundan emin olmak istiyorsak. Veya herhangi bir değişkenin belirli bir aralıkta bir değeri olduğundan emin olmak istiyoruz.
Böyle bir varsayımda bulunduğumuzda, gerçekten doğru olduklarından emin olmak için iddialar sunarız.
Sıkça Sorulan Sorular
S # 1) assert bir Java istisnası oluşturuyor mu?
Cevap: Yapılan varsayım yanlış olduğunda Assert genellikle 'AssertionError' atar. AssertionError, Error sınıfından (sonuçta Throwable'dan genişleyen) genişler.
S # 2) Java'da bir iddia başarısız olursa ne olur?
Cevap: Onaylama işleminin başarısız olduğu program için onaylar etkinleştirilirse, AssertionError atacaktır.
S # 3) Java'da bir iddia neyi döndürür?
Cevap: Bir assert ifadesi, bir programda gerçekleşmesi beklenen bir Boole koşulunu bildirir. Bu Boolean koşulu yanlış olarak değerlendirilirse, onaylama etkinleştirilmişse çalışma zamanında bir AssertionError verilir.
Varsayım doğruysa, Boole koşulu doğruya dönecektir.
S # 4) İddia hatasını yakalayabilir miyiz?
Cevap: Assert ifadesi tarafından oluşturulan AssertionError, Error sınıfını genişleten denetlenmemiş bir istisnadır. Bu nedenle, iddiaların açıkça beyan edilmesi gerekmez ve ayrıca onları denemeye veya yakalamaya gerek yoktur.
S # 5) Bir istisnayı nasıl iddia ediyorsunuz?
Cevap: Bir istisna ileri sürmek için ExpectedException nesnesini aşağıdaki gibi bildiriyoruz:
public ExpectedException istisna = ExpectedException. Yok ();
Ardından, istisnayı belirtmek ve istisna mesajı vermek için beklenen () ve message () yöntemlerini Test yönteminde kullanırız.
Sonuç
Bununla, bu öğreticiyi Java'daki iddialarla sonuçlandırdık. Java'daki iddiaların tanımını ve amacını tartıştık. Java programında iddiayı kullanmak için önce komut satırını kullanmalarını sağlamalıyız.
Program seviyesinde, paket seviyesinde, dizin seviyesinde vb. İddiaları etkinleştirebileceğimiz çeşitli yolları araştırdık. Java'da anahtar kelime ve iddia ifadeleri ve bunların programlama örnekleri ile ayrıntılı sözdizimi tartışıldı. Assert anahtar sözcüğü ve varlık ifadeleri, iddiaları kullanmamıza yardımcı olur.
Bir onaylama işlemi başarısız olduğunda bir AssertionError verildiğini gördük. Java'daki iddialar çoğunlukla derleme sırasında kullanılır ve çalışma zamanında varsayılan olarak devre dışı bırakılırlar.
Ayrıca, iddialar çoğunlukla, uygulamaları test etmek için test senaryolarını yazdığımız Java'nın JUnit çerçevesinde kullanılır.
=> Kolay Java Eğitim Serisini Okuyun.
Önerilen Kaynaklar
- Junit ve TestNG Çerçevelerini Kullanan Selenium'daki İddialar
- Selenyum İddiası Örnekleri - Projelerde Pratik Uygulamalar
- Bir XML Kodu Örneğiyle SOAtest'te Onaylama
- C ++ Assert (): Örneklerle C ++ 'da Onaylama İşlemi
- SoapUI'deki İddiaları Anlamak - SoapUI Eğitimi # 5
- Yeni Başlayanlar İçin JAVA Eğitimi: 100+ Uygulamalı Java Video Eğitimi
- Java'da Jagged Array - Örneklerle Eğitim
- Java DataTypes, Loops, Arrays, Switch ve Assertions