GUI Testini anlamak için önce anlayalım-
GUI nedir?
Bir bilgisayar uygulaması için iki tür arayüz vardır. Komut Satırı Arayüzü, metin yazdığınız ve bilgisayarın bu komuta yanıt verdiği yerdir. GUI, metin yerine görüntüleri kullanarak bilgisayarla etkileşim kurduğunuz Grafik Kullanıcı Arayüzü anlamına gelir.
Kullanıcı ve uygulama arasındaki etkileşim için kullanılabilecek GUI öğeleri aşağıdadır:
GUI Testi, yukarıdaki öğelerin doğrulanmasıdır.
GUI Testi
GUI Testi , Yazılımın Grafik Kullanıcı Arayüzünü kontrol eden bir yazılım test türüdür. Grafik Kullanıcı Arayüzü (GUI) Testinin amacı, ekranlar ve menüler, düğmeler, simgeler vb. Gibi kontrolleri kontrol ederek yazılım uygulamasının işlevlerinin teknik özelliklere göre çalışmasını sağlamaktır.
GUI, kullanıcının gördüğü şeydir. Diyelim ki guru99.com'u ziyaret ederseniz, göreceğiniz şey ana sayfa deyin, sitenin GUI'si (grafik kullanıcı arayüzü). Kullanıcı kaynak kodunu görmüyor. Arayüz kullanıcı tarafından görülebilir. Özellikle tasarım yapısı, düzgün çalışıp çalışmadığı imajlar üzerinde duruluyor.
Yukarıdaki örnekte, GUI testi yapmak zorunda kalırsak, öncelikle görüntülerin farklı tarayıcılarda tamamen görünür olması gerektiğini kontrol ederiz.
Ayrıca, bağlantılar mevcuttur ve düğme tıklandığında çalışmalıdır.
Ayrıca, kullanıcı ekranı yeniden boyutlandırırsa, ne görüntüler ne de içerik küçülmemeli, kırpılmamalı veya örtüşmemelidir.
Bu eğitimde öğreneceksiniz-
- GUI Testi nedir?
- GUI Testi İhtiyacı
- Ne Check-in GUI Testi yaparsınız?
- GUI Testi Yaklaşımı
- GUI Test Test Durumları
- Demo: GUI Testi nasıl yapılır
- GUI Testindeki Zorluklar
GUI Testi İhtiyacı
Şimdi GUI testinin temel kavramı açıktır. Aklınıza gelecek birkaç soru olacak
- GUI testi neden yapılır?
- Gerçekten gerekli mi?
- Uygulamanın işlevsel ve mantığının test edilmesi fazlasıyla yeterli değil mi? Öyleyse neden UI testinde zaman harcayasınız?
Cevabı bir testçi olarak değil, bir kullanıcı olarak düşünmek için almak. Bir kullanıcının XYZ yazılımı / Uygulaması hakkında herhangi bir bilgisi yoktur. Bir kullanıcının Uygulamayı daha fazla kullanıp kullanmayacağına karar veren, Uygulamanın Kullanıcı Arabirimidir.
Normal bir Kullanıcı önce Uygulama / Yazılımın tasarımını ve görünümünü ve kullanıcı arayüzünü anlamanın ne kadar kolay olduğunu gözlemler. Bir kullanıcı Arayüz konusunda rahat değilse veya anlayacak Uygulama kompleksi buluyorsa, o Uygulamayı Bir Daha asla kullanmayacaktır. Bu nedenle, GUI bir endişe konusudur ve GUI'nin Hatasız olduğundan emin olmak için uygun testler yapılmalıdır.
Ne Check-in GUI Testi yaparsınız?
Aşağıdaki kontrol listesi, Yazılım Testinde ayrıntılı GUI Testini sağlayacaktır.
- Karakterlerin veya sayıların boyutu, konumu, genişliği, uzunluğu ve kabulü için tüm GUI öğelerini kontrol edin. Örneğin, giriş alanlarına girdi sağlayabilmelisiniz.
- GUI'yi kullanarak uygulamanın amaçlanan işlevselliğini yürütebileceğinizi kontrol edin.
- Hata Mesajlarını Kontrol Et doğru görüntüleniyor
- Ekranda farklı bölümlerin net sınırlarını kontrol edin
- Bir uygulamada kullanılan Yazı Tipini Kontrol Et okunabilir
- Metnin hizalamasının doğru olup olmadığını kontrol edin
- Yazı tipinin rengini kontrol edin ve uyarı mesajları estetik açıdan hoştur
- Görüntülerin netliğini kontrol edin
- Görüntülerin düzgün şekilde hizalanıp hizalanmadığını kontrol edin
- Farklı ekran çözünürlüğü için GUI öğelerinin konumunu kontrol edin.
GUI Test Teknikleri
GUI Test Teknikleri üç bölüme ayrılabilir:
Manuel Tabanlı Test
Bu yaklaşım kapsamında, grafik ekranlar, iş gereksinimleri belgesinde belirtilen gereksinimlere uygun olarak test uzmanları tarafından manuel olarak kontrol edilir.
Kaydet ve Tekrar Oynat
GUI testi, otomasyon araçları kullanılarak yapılabilir. Bu 2 kısımda yapılır. Kayıt sırasında, test adımları otomasyon aracı tarafından yakalanır. Oynatma sırasında, kaydedilen test adımları Test Edilen Uygulama üzerinde yürütülür. Bu tür araçlara örnek - QTP.
Modele Dayalı Test
Model, bir sistemin davranışının grafiksel bir açıklamasıdır. Sistem davranışını anlamamıza ve tahmin etmemize yardımcı olur. Modeller, sistem gereksinimlerini kullanarak bir nesil verimli test senaryosuna yardımcı olur. Bu model tabanlı test için aşağıdakilerin dikkate alınması gerekir:
- Modeli oluşturun
- Model için Girdileri Belirleyin
- Model için beklenen çıktıyı hesaplayın
- Testleri çalıştırın
- Gerçek çıktıyı beklenen çıktıyla karşılaştırın
- Modelle ilgili daha fazla eylem kararı
Test senaryolarının türetilebileceği modelleme tekniklerinden bazıları:
- Grafikler - Bir sistemin durumunu gösterir ve bazı girişlerden sonra durumu kontrol eder.
- Karar Tabloları - Uygulanan her girdinin sonuçlarını belirlemek için kullanılan tablolar
Model tabanlı test, gereksinimlerden test senaryoları oluşturmak için gelişen bir tekniktir . Yukarıdaki iki yönteme kıyasla ana avantajı, GUI'nizin ulaşabileceği istenmeyen durumları belirleyebilmesidir.
Aşağıdakiler, otomatik UI Testi yapmak için kullanılabilen açık kaynak araçlarıdır.
Ürün | Lisanslı |
---|---|
AutoHotkey | GPL |
Selenyum | Apaçi |
Sikuli | MIT |
Robot Çerçevesi | Apaçi |
Su | BSD |
Dojo Araç Seti | BSD |
Örnek GUI Testi Test Durumları
GUI Testi temel olarak şunları içerir:
- Elemanların boyutunu, konumunu, genişliğini ve yüksekliğini test etmek.
- Görüntülenen hata mesajlarının test edilmesi.
- Ekranın farklı bölümlerini test etme.
- Yazı tipinin okunabilir olup olmadığının test edilmesi.
- 640 x 480, 600x800 gibi yakınlaştırma ve uzaklaştırma yardımı ile ekranın farklı çözünürlüklerde test edilmesi.
- Metinlerin ve simgeler, düğmeler vb. Gibi diğer öğelerin hizalanmasının test edilmesi uygun yerde olup olmadığı.
- Yazı tiplerinin renklerinin test edilmesi.
- Hata mesajlarının, uyarı mesajlarının renklerinin test edilmesi.
- Görüntünün iyi netliğe sahip olup olmadığını test etmek.
- Görüntülerin hizalanmasının test edilmesi.
- Yazımın test edilmesi.
- Kullanıcı, sistem arayüzünü kullanırken sinirlenmemelidir.
- Arayüzün çekici olup olmadığını test etmek.
- Kaydırma çubuklarının varsa sayfanın boyutuna göre test edilmesi.
- Varsa devre dışı bırakılan alanların test edilmesi.
- Görüntülerin boyutunun test edilmesi.
- Başlıkların düzgün hizalanıp hizalanmadığının test edilmesi.
- Köprünün renginin test edilmesi.
Demo: GUI Testi nasıl yapılır
Burada aşağıdaki ekran için bazı örnek test senaryoları kullanacağız.
Aşağıda, UI ve Kullanılabilirlik testi senaryolarından oluşan Test senaryolarının bir örneği verilmiştir.
TC 01- " Kaynak Klasör " etiketli metin kutusunun düzgün hizalandığını doğrulayın.
TC 02 - " Paket " etiketli metin kutusunun doğru şekilde hizalandığını doğrulayın.
TC 03 - " Gözat " adlı etiketin, " Kaynak Klasör " adıyla TextBox'ın sonunda bulunan bir düğme olduğunu doğrulayın .
TC 04 - " Gözat " adlı etiketin , TextBox'ın sonunda " Paket " adlı bir düğme olduğunu doğrulayın .
TC 05 - " Ad " etiketli metin kutusunun düzgün hizalandığını doğrulayın.
TC 06 - " Değiştiriciler " etiketinin genel, varsayılan, özel, korumalı adında 4 radyo düğmesinden oluştuğunu doğrulayın .
TC 07 - " Değiştiriciler " etiketinin , arka arkaya düzgün şekilde hizalanmış 4 radyo düğmesinden oluştuğunu doğrulayın .
TC 08 - " Değiştiriciler " etiketi altındaki " Üst Sınıf " etiketinin , uygun şekilde hizalanması gereken bir açılır menüden oluştuğunu doğrulayın .
TC 09 - " Süper Sınıf " etiketinin üzerinde " Gözat " etiketli ve düzgün şekilde hizalanması gereken bir düğmeden oluştuğunu doğrulayın .
TC 10 - Herhangi bir radyo düğmesine tıklandığında varsayılan fare imlecinin el fare imlecine dönüştürülmesi gerektiğini doğrulayın.
TC 11 - Kullanıcının " Süper Sınıf " açılır menüsüne yazamayacağını doğrulayın .
TC 12 - Yanlışlıkla seçilmiş bir şey varsa uygun bir hata oluşması gerektiğini doğrulayın.
TC 13 - Hatanın gerekli olduğu yerde KIRMIZI renkte oluşturulması gerektiğini doğrulayın.
TC 14 - Hata mesajlarında uygun etiketlerin kullanılması gerektiğini doğrulayın.
TC 15 - Her seferinde varsayılan olarak tek radyo düğmelerinin seçilmesi gerektiğini doğrulayın.
TC 16 - Bir öncekinin yanındaki başka bir alana atlarken SEKME düğmesinin düzgün çalışması gerektiğini doğrulayın.
TC 17 - Tüm sayfaların doğru başlığı içermesi gerektiğini doğrulayın.
TC 18 - Sayfa metninin düzgün şekilde hizalanması gerektiğini doğrulayın.
TC 19 - Herhangi bir alanı güncelledikten sonra uygun bir onay mesajının görüntülenmesi gerektiğini doğrulayın.
TC 20 - Yalnızca 1 radyo düğmesinin seçilmesi gerektiğini ve birden fazla onay kutusunun seçilebileceğini doğrulayın.
GUI Testindeki Zorluklar
Yazılım Mühendisliğinde, Regresyon Testi yaparken en yaygın sorun, uygulama GUI'sinin sık sık değişmesidir. Bir sorun mu yoksa geliştirme mi olduğunu test etmek ve belirlemek çok zordur. GUI değişiklikleriyle ilgili herhangi bir belgeniz olmadığında sorun ortaya çıkar.
GUI Test Araçları
Aşağıda, popüler GUI Test Araçlarının bir listesi verilmiştir :
- Ranorex
- Selenyum
- QTP
- Salatalık
- SilkTest
- TestComplete
- Squish GUI Test Cihazı
Selenium, QTP ve Hıyar öğrenmek için buraya tıklayın.
Sonuç:
Bir yazılım ürününün başarısı, büyük ölçüde GUI'nin kullanıcıyla nasıl etkileşime girdiğine ve çeşitli özelliklerini kullanmanın kolaylığına bağlıdır. Bu nedenle GUI testi çok önemlidir. Manuel GUI testi bazen tekrar eden ve sıkıcı olabilir ve bu nedenle hataya açık olabilir. Otomasyon, GUI testi için şiddetle tavsiye edilir.
Bu makale Swati Ghildiyal, Prateek Chandra ve Guru99'un katkılarıyla hazırlanmıştır.