how test java applications tips with sample test cases
Bu eğitimde, bir Java uygulamasında yer alan bileşenleri ve yüksek kaliteli, hatasız bir uygulama sağlamak için yapılması gereken çeşitli test türlerini öğreneceğiz.
Bu bir JAVA uygulamalarının test edilmesine ilişkin üç bölümlük seri.
- Bu makalede, bir J2EE uygulaması için J2EE bileşenlerini ve Manuel test yaklaşımını öğreneceğiz.
- İkincisi, gözden geçireceğiz Otomatik test J2EE uygulamalarını test etme yaklaşımı ve
- Üçüncü bölümde, J2EE uygulamalarını test etmek için kullanılabilen kapsamlı bir araç listesini inceleyeceğiz.
Ne öğreneceksin:
- J2EE Uygulamalarına Genel Bakışla Başlayalım
- JAVA / J2EE Uygulamasının Test Edilmesi
- Manuel Java Uygulama Testi:
- Sonuç
- Önerilen Kaynaklar
J2EE Uygulamalarına Genel Bakışla Başlayalım
KİME Java Web uygulaması, her biri önemli bir amaca hizmet eden birkaç bileşenden oluşur. MVC Model View Controller'in kısaltması olan, en popüler ve en sık kullanılan Mimari tasarım modeli olarak duruyor.
Test etmeyi öğrenmeden önce, kısaca bir J2EE uygulamasının çeşitli bileşenleri.
- İstemci / Tarayıcı URL içeren bir web adresi sorar.
- JSP (Java Sunucusu Sayfaları) - JSP kullanıcıya veri sunmayı amaçlayan sunucu tarafı bir teknolojidir. Java kodunun HTML sayfalarına eklenmesine yardımcı olan JSP etiketleri adı verilen özel etiketlerin yardımıyla dinamik içeriğin görüntülenmesini destekler. (Statik HTML her zaman aynı içeriği gösterir). Çalışma zamanında bir JSP, bir Servlet'e dönüştürülür. İş mantığı tipik olarak burada yazılmaz.
- JSF (Java Sunucusu Yüzleri) - JSF, Kullanıcı Arayüzünün etkili tasarımı için bir görünüm bileşeni çerçevesidir.
- Javascript / Jquery - Görünümün / ekranın İstemci tarafı doğrulaması için kullanılan komut dosyası dilleridir.
- Servlet - Bir Servlet, girişten alınan verileri doğrular, uygun iş mantığı kodunu seçer ve değerleri Bean koduna aktarır.
- Kurumsal Java Bean (EJB) - Burası, tüm iş mantığının tipik olarak yazıldığı ve işlendiği yerdir. Bean daha sonra kodu veritabanını okumak, yazmak veya güncellemek için çağırır. Veritabanı işlemleri tamamlandığında, yanıt daha sonra, sonuçları görüntülemek için uygun JSP'yi seçen Servlet'e geri aktarılır.
- Ağ hizmetleri - Web hizmetleri, ayrı bir sunucuda çalışan ve HTTP protokolü üzerinden iletişim kuran bir uygulamanın bileşenleridir.
- Veri tabanı - uygulamanın tüm verilerini depolar.
Lütfen tüm web uygulamalarının JSP -> Servlet -> EJB -> Veritabanı modeli . J2EE uygulamalarının çoğu şu anda Struts, Spring veya Hibernate gibi bir çerçeve ile yazılmıştır. Uygulamaların tasarımı, uygulamanın boyutuna, maliyetine, geliştirme süresine, kaynaklara ve ekip büyüklüğüne bağlı olarak her gereksinim için değişir.
JAVA / J2EE Uygulamasının Test Edilmesi
Şimdi tüm bir J2EE uygulamasını test etmeye geçelim. Bu birkaç adımda yapılır.Örneğinsahip olduğumuzu düşünün üç ekran:
- Bir giriş ekranı
- Kuruluştaki tüm çalışanları listeleyen bir çalışan görüntüleme ekranı
- Bir çalışan değiştirme / ekleme / kaldırma ekranı.
Bu üç ekran için UI (Kullanıcı Arayüzü) JSP / HTML ile geliştirilir ve doğrulamalar JavaScript aracılığıyla gerçekleştirilir. Örnek bir uygulama olduğu için mantık Servlet ve DAO (Veri Erişim Nesnesi) içindedir. DAO, veritabanına bağlanmak için bir sınıftır.
Örnek ekranlar aşağıdadır:
Manuel Java Uygulama Testi:
Manuel JAVA testi sırasında, bir test uzmanı test senaryolarını ayrıntılı tasarım belgesinden hazırlar ve mümkün olan her senaryoyu ve kod parçacığını kapsamaya çalışır.
# 1) JAVA BİRİMİ TESTİ
Birim testi bir tür testtir burada bir kullanıcının doğruluk, doğruluk ve gereksinimleri karşılama açısından en küçük kod parçacığını test etmesi gerekir.
Alalımgiriş ekranı örneği. Giriş ekranında iki metin alanı vardır: kullanıcı adı ve şifre ve iki düğme vardır: gönder ve iptal et.
Test senaryoları tüm döngüleri ve koşullu ifadeleri kapsamalıdır. Test senaryoları beklenen sonuçları ve test verilerini göstermelidir. Aşağıda, bir kullanıcının oturum açma ekranında manuel olarak yürütebileceği bazı genel test durumları verilmiştir. Sonuçlar daha sonra test senaryosu belgesinde not edilir.
Aşağıda, giriş ekranı için örnek bir test durumu formatı bulunmaktadır.
S.No. | Test durumu | Beklenen Sonuç | Gerçek sonuç | Başarılı / Başarısız |
---|---|---|---|---|
4 | Kullanıcı 10 karakterden uzun bir kullanıcı adı girer | Hata mesajı 'Kullanıcı adı 10 karakterden fazla olmamalıdır' görüntülenmelidir | Hata mesajı görüntülenmiyor | BAŞARISIZ |
1 | Kullanıcı, Kullanıcı Adı, Şifre etiketlerinin görünümünü kontrol eder | Etiketler doğru yazılmalı ve Normal boyutlu yazı tipinde görüntülenmelidir | Etiket kullanıcı adı ve şifre doğru şekilde görüntüleniyor | GEÇMEK |
iki | Kullanıcı düğmenin görünümünü kontrol eder Gönder ve İptal Et | Düğmeler doğru adla görüntülenmelidir | Gönder ve İptal düğmeleri doğru şekilde görüntüleniyor | GEÇMEK |
3 | Kullanıcı ekranın arka plan rengini kontrol eder | Giriş formu beyaz bir tablo içinde olmalı ve ekran arka plan gri olmalıdır | Ekran görünümü gereksinimleri karşılamıyor. | BAŞARISIZ |
4 | Kullanıcı, kullanıcı adı metin kutusunu Boş bırakıyor | 'Kullanıcı adı boş olamaz' hata mesajı görüntülenmelidir | 'Kullanıcı adı boş olamaz' hata mesajı görüntüleniyor | GEÇMEK |
5 | Kullanıcı, kullanıcı adı metin kutusuna bir değer girer ve şifre metin kutusunu Boş olarak bırakır. | 'Şifre boş olamaz' hata mesajı görüntülenmelidir | 'Şifre boş olamaz' hata mesajı görüntüleniyor | GEÇMEK |
6 | Kullanıcı, kullanıcı adını 'abcd' ve şifreyi 'xxxx' olarak girer | Hata mesajı 'Yanlış kullancı adı Şifre kombinasyonu' görüntülenmeli | Hata mesajı 'Yanlış kullancı adı Şifre kombinasyonu' görüntülenir | GEÇMEK |
5 | Kullanıcı, kullanıcı adını 'test kullanıcısı' olarak ve parolayı 'şifre' olarak girer ve Gönder düğmesini tıklar | Kullanıcı, 'Çalışan ayrıntıları ekranı' nı görebilmelidir | Çalışan ayrıntıları ekranı görüntülenir | GEÇMEK |
Tabloda bazı test durumları listelenirken, tam liste aşağıda verilmiştir:
- NULL işaretçi istisnası dahil herhangi bir istisna olup olmadığını kontrol edin
- Kullanıcı adı ve şifre için NULLS'a izin verilip verilmediğini kontrol edin
- Kullanıcı adı / parolanın doğru biçimde olup olmadığını kontrol edin
- Kullanıcı adı için sayılara izin verilip verilmediğini kontrol edin
- Kullanıcı adında özel karakterlere izin verilip verilmediğini kontrol edin
- Kullanıcı adı ve parolanın doğru kombinasyonunun girilip girilmediğini kontrol edin, ardından uygulama sizi bir sonraki ekrana, yani çalışan bilgileri ekranına götürür.
- Girilen kullanıcı adının doğru uzunlukta olup olmadığını kontrol edin
- Kullanıcı adı metin alanının yalnızca o alan için belirtilen maksimum karakter sayısına izin verip vermediğini kontrol edin
- Gereksinimlerde belirtilmişse parola alanının girerken * olarak görünüp görünmediğini kontrol edin.
- Parolaların büyük / küçük harfe duyarlı olup olmadığını kontrol edin
- Kullanıcı adının büyük / küçük harfe duyarlı olup olmadığını kontrol edin
- Giriş sayfasının, çıktıktan sonra bile kullanıcı adını veya parolayı hatırlamadığını kontrol edin
- Gönder ve İptal düğmesinin gereksinime göre çalışıp çalışmadığını kontrol edin
- Uygulamayı ilk kez kullanıyorsanız, kullanıcı adının uygulamaya girme izni olup olmadığını kontrol edin
- Veritabanından bir kullanıcı adı / şifre kombinasyonunu silin ve kombinasyonun tekrar giriş yapıp yapamayacağını kontrol edin
- Yukarıdaki tüm durumlar için, uygun doğrulama hata mesajlarının gösterilip gösterilmediğini kontrol edin.
- Etiketlerin ve Düğmelerin ekranda doğru yerde olup olmadığını ve metni doğru görüntüleyip görüntülemediklerini kontrol edin
- Ekran görünümlerinin gereksinimlere uygun olup olmadığını kontrol edin
- İstisnaların işlenip işlenmediğini kontrol edin
- Gerekli eylemler için günlük kaydı yapılıp yapılmadığını kontrol edin
Test senaryolarından geçtikten sonra, çoğunlukla belirli bir ekranın alanlarının, düğmelerinin, işlevselliğinin ve doğrulamalarının test edilmesiyle uğraştığınızı fark edebilirsiniz. Birim Testi, her küçük kod parçacığı ve bileşenin test edilmesiyle çok yakından ilgilendiği için bu doğrudur. Tüm ekranlar için aynı tip test yapılmalıdır.
Yukarıdakilerin yalnızca örnek olduğunu ve test senaryolarının projeye özgü ve ayrıntılı bir tasarım belgesine göre hazırlandığını lütfen unutmayın.
Ayrıca Oku=> Kullanıma hazır örnek test senaryoları ve test senaryoları web uygulama testi için.
# 2) ENTEGRASYON TESTİ
Entegrasyon testinde, münferit modüller entegre edilir ve doğruluk açısından birlikte test edilir.
güvenli bir ağ nasıl kurulur
Yukarıdaki örnekteki üç ekranın her birinin üç farklı ekip üyesi tarafından geliştirilmesine izin verin. Artık Birim testi bittiğine göre, tüm kodu bir araya getirmenin ve birlikte iyi çalışıp çalışmadıklarını kontrol etmenin zamanı geldi. Veri veya kontrolün bir ekrandan diğerine doğru bir şekilde aktarıldığından emin olmak için entegrasyon testi yapılır.
Çalışan Uygulaması örneği için bazı örnek entegrasyon testi durumları şunlardır:
- Oturum açan kullanıcının ve oturumun diğer tüm yeni entegre ekranlarda aynı olup olmadığını kontrol edin
- Diğer modüllerin veri tabanına gerekli olmayan herhangi bir kaydı güncelleme / silme / ekleme yapıp yapmadığını kontrol edin
- Eklemede 'Yeni', değiştirmede 'Güncellendi' ve silme sırasında 'Silindi' yazan bir çalışan durumu alanı olsun. İki veya üç ekran aynı durum alanını kullanabilse de, alanın yanlış şekilde güncellenmediğinden emin olmak önemlidir.
- Entegrasyondan sonra üstbilgi, altbilgi, ekran boyutu ve görünümün gereksinimleri karşılayıp karşılamadığını kontrol edin
- Gönder düğmelerine tıkladığınızda, kontrolün sonraki ekrana aktarıldığını kontrol edin.
- İptal düğmesine tıklandığında, gerçekleştirilen eylemin iptal edildiğini kontrol edin.
Ek olarak, bir J2EE uygulaması için genel entegrasyon testi durumları şunlar olabilir:
- Nesne, XML veya Oturum veri akışını uçtan uca kontrol edin. Doğruluğu kontrol edin.
- Oturumun her modül tarafından doğru yönetilip yönetilmediğini kontrol edin
- Harici uygulamalar (web hizmetleri) söz konusuysa, uygulamanızın arama yapıp yapamadığını ve uygulamadan verileri geri alıp alamadığını kontrol edin
# 3) SİSTEM TESTİ
Sistem testinde, uygulamanın tamamı, gereksinimlere göre işlevsellik ve eksiksizlik açısından test edilir. Her bileşenin Birim testinin ne zaman yapıldığını ve kod bileşenlerinin de entegrasyon testi sırasında bir araya getirilip test edildiğini sormak muhtemelen daha kolay olacaktır. Sistem testinde ne farklı olabilir? Sistem Testinde fikrin uygulamayı bozmak olduğunu söylemek yanlış olmaz :)
Senaryo 1: Bir çerçeve ile yeni bir çalışan uygulaması geliştirirsiniz;Örneğin, Dikmeler. Kuruluşunuzdaki farklı sunucularda çalışan birkaç başka uygulama da vardır. Ancak, hepsi belirli bir kişinin adresini ve telefon numarasını almak için aynı mevcut web hizmetini arar.
Entegrasyon testi sırasında, uygulamanızın web servisine çağrı yapıp yapamayacağını ve yanıtı alıp alamayacağınızı test etmiş olursunuz. Peki ya web hizmetinin kendisinde bir sorun varsa? Veya web hizmeti bazı nadir girdilere yanıt vermiyor mu? Bizim durumumuzda web hizmeti, en fazla 6 karakterlik bir çalışan numarası alabilir. Veya, web hizmeti geri dönerken belirli adres biçimleri için istisnalar atar. Bu harici bir durumdur, ancak aynı zamanda Sistem testinin bir parçasıdır.
Senaryo 2 : Çalışan başvurunuz tamamlandı. Bir çalışan eklersiniz ve bir Çalışan Numarası # 1001 oluşturur. Değiştirir, siler, günceller, ekler, değiştirir, siler, ekler, ekler, ekler, değiştirir, siler ve son olarak başka bir tane eklersiniz. Ya yeni çalışan numarası yine # 1001 ise?
Senaryo 3 : İki kullanıcının uygulamayı aynı anda kullandığını varsayalım. İkisi de aynı çalışan üzerinde çalışmaya başlar, biri silinir. Ya diğer kullanıcı, oturumda depolandığı haliyle aynı çalışanların değiştirilmesine devam edebiliyorsa?
Aşağıda Sistem testinin bazı önemli yönleri bulunmaktadır:
- Veri akışının ve kontrolün doğru olduğundan emin olun. uçtan uca
- İşlem verilerinin güvenliğini sağlayın
- Uygulamanın tüm iş işlevlerini takip ettiğinden emin olun
- Uygulamanın bir son ürün olarak iyi çalışıp çalışmadığını kontrol edin - bozuk bağlantıları, oturum yönetimini, tanımlama bilgilerini, günlük kaydını, hata işlemeyi, istisna işlemeyi, doğrulamayı ve işlem akışını kontrol edin.
# 4) PERFORMANS TESTİ
Bu tür testler, uygulamayı kullanan çok sayıda kullanıcı veya veritabanında büyük miktarda veri veya her ikisini birden kullanacaksa gerçekleştirilir. Aşağıda bazı durumlar verilmiştir:
- Aynı anda birden fazla kullanıcı oturum açarsa, uygulamaların kilitlenmediğini / kilitlenmediğini kontrol edin.
- Veritabanında büyük miktarda veri varsa - arama ekranı ızgaralarının oturum zaman aşımından önce sorguları yürütmesinin çok uzun sürmediğini kontrol edin.
- Çok iş parçacıklı bir ortamda, uygulamanın tüm iş parçacıklarını iyi işleyebildiğini kontrol edin
- Çok sayıda nesnenin oluşturulduğu uygulamalarda, yeterli belleğin ayrılıp ayrılmadığını, çöp toplamanın işlenip işlenmediğini ve bellek yetersizliği istisnalarının olmadığını kontrol edin.
Sonuç
Bu makalede, bir J2EE uygulamasına genel bir bakış ele aldık. Bir örnekle uygulamanın her bir bileşeni için Birim, Entegrasyon, İşlevsel ve Sistem testlerini manuel olarak nasıl gerçekleştireceğimizi de gördük.
İçinde sonraki makale , Otomasyon testinin büyük J2EE uygulamaları için nasıl faydalı olabileceğini göreceğiz.
Yazar hakkında: Bu, Padmavaty S. tarafından yazılan konuk bir makaledir. 7+ yıllık yazılım test deneyimiyle, Java, J2EE, MVC ve Struts çerçevesini test etmede kapsamlı deneyime sahiptir.
JAVA uygulamalarını test etmeye çalışıyorsanız bize bildirin. Deneyiminizi ve sorularınızı aşağıdaki yorumlarda paylaşın.
PREV Eğitimi | SONRAKİ Eğitici
Önerilen Kaynaklar
- ISTQB Test Sertifikasyon Cevaplı Örnek Soru Kağıtları
- JAVA / J2EE Uygulamalarında Otomasyon Testi Nasıl Gerçekleştirilir (Bölüm 2)
- En İyi Yazılım Test Araçları 2021 (QA Test Otomasyon Araçları)
- Herhangi Bir Uygulamayı Test Etmeden Önce Okumanız Gereken En İyi 20 Pratik Yazılım Test İpuçları
- Sağlık Hizmeti Uygulamalarının Test Edilmesi - İpuçları ve Önemli Test Senaryoları (Bölüm 2)
- Uygulamada Hata Nasıl Bulunur? Ipuçları ve Püf noktaları
- JMeter ile Veritabanı Testi
- Java Sanal Makinesi: JVM, Java Uygulamasını Çalıştırmada Nasıl Yardımcı Olur?