GUI Testi: Kullanıcı Arayüzü Test Senaryoları ve Örnekleri
⚡ Akıllı Özet
GUI Testi, bir uygulamanın görünür her öğesini (düğmeler, menüler, simgeler, metin kutuları ve düzenler) doğrular; böylece ekranlar, gerçek kullanıcılar dokunmadan önce tarayıcılar, cihazlar ve ekran çözünürlükleri genelinde tam olarak belirtildiği gibi davranır ve görünür.

GUI testini anlamak için öncelikle GUI'nin ne olduğunu anlayalım.
GUI nedir?
Bir bilgisayar uygulaması için iki tür arayüz vardır. Komut Satırı Arayüzü, metni yazdığınız ve bilgisayarın bu komuta yanıt verdiği yerdir. GUI, metin yerine görüntüleri kullanarak bilgisayarla etkileşimde bulunduğunuz Grafik Kullanıcı Arayüzü anlamına gelir.
Kullanıcı ile uygulama arasındaki etkileşim için kullanılabilecek GUI öğeleri şunlardır:
GUI Testi yukarıdaki öğelerin doğrulanmasıdır.
GUI Testi Nedir?
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ı, menüler, düğmeler, simgeler vb. ekranları ve kontrolleri kontrol ederek yazılım uygulamasının işlevlerinin spesifikasyonlara göre çalışmasını sağlamaktır.
Kullanıcı arayüzü (GUI), kullanıcının gördüğü şeydir. Guru99.com adresini ziyaret ettiğinizde karşınıza çıkan ana sayfa, sitenin GUI'sidir. Kaynak kod gizli kalır; yalnızca arayüz görünür. Bu nedenle GUI testleri, tasarım yapısına ve resimlerin doğru şekilde işlenip işlenmediğine odaklanır.
Yukarıdaki ekran görüntüsünde, GUI testi, her görüntünün farklı tarayıcılarda tamamen görünür olduğunun doğrulanmasıyla başlar. Aynı sayfadaki kalan kontroller şunlardır:
- Bağlantılar kullanılabilir durumda ve her bir düğme tıklandığında çalışıyor.
- Ekran boyutunu değiştirmek, görüntülerin veya metinlerin küçülmesine, kırpılmasına veya üst üste binmesine asla neden olmaz.
- Tarayıcı penceresi daraltıldığında düzen içindeki hiçbir şey kaybolmaz.
💡 İpucu: Herhangi bir hata kaydı oluşturmadan önce aynı sayfayı 1920×1080, 1366×768 ve 375×812 çözünürlüklerinde çalıştırın. Birçok "bozuk sayfa düzeni" raporu, test edilmemiş hata noktalarından kaynaklanmaktadır.
GUI Testinin İhtiyacı
Artık GUI testinin temel kavramı açık. Aklınıza gelecek birkaç soru şunlar olacaktır:
- GUI testi neden yapılıyor?
- Gerçekten gerekli mi?
- Bir uygulamanın işlevselliğini ve mantığını test etmek tek başına yeterli değil mi, arayüz için neden fazladan zaman harcansın ki?
Cevabı bulmak için bir test uzmanı gibi değil, bir kullanıcı gibi düşünün. Kullanıcının uygulamanın nasıl oluşturulduğuna dair hiçbir bilgisi yoktur. Kullanıcının uygulamayı kullanmaya devam edip etmeyeceğine veya terk edeceğine karar veren arayüzdür.
Normal bir kullanıcı öncelikle uygulamanın tasarımına ve görünümüne, ayrıca arayüzün anlaşılmasının ne kadar kolay olduğuna bakar. Kullanıcı arayüzden rahatsız olursa veya uygulamayı anlamakta zorlanırsa, bir daha asla geri dönmeyecektir. Bu nedenle, grafik kullanıcı arayüzü (GUI) önemli bir konudur ve arayüzün hatasız olduğundan emin olmak için uygun testler yapılmalıdır.
GUI Test Türleri
Arayüzün neden önemli olduğunu bilmek, resmin sadece yarısıdır. GUI testi beş farklı türden oluşur ve her biri aynı ekranla ilgili farklı bir soruyu yanıtlar.
- İşlevsel GUI testi: Her kontrolün vaat ettiği işlevi yerine getirdiğini doğrular. Şunlarla yakından ilgilidir: fonksiyonel testBu, bir düğmenin gönderimi onaylayıp onaylamadığını, bir açılır menünün filtreleme yapıp yapmadığını ve bir alanın geçerli giriş kabul edip etmediğini sorgular.
- Kullanılabilirlik testi: Gerçek bir kişinin bir görevi ne kadar kolay tamamladığını ölçer. Kullanılabilirlik testi Gezinme derinliğine, okunabilirliğe ve hata mesajlarının gerçekten yardımcı olup olmadığına bakar.
- Uyumluluk testi: Aynı ekran görüntülerini farklı tarayıcılarda, işletim sistemlerinde ve cihaz boyutlarında tekrarlar. Çapraz tarayıcı testi Yalnızca tek bir motorda görünen işleme hatalarını yakalar.
- Erişilebilirlik testi: Klavyeyle gezinmeyi, ekran okuyucu etiketlerini ve renk kontrastını WCAG standartlarına göre doğrular. Erişilebilirlik testi Bu, artık birçok piyasada isteğe bağlı bir özellik değil, bir uyumluluk şartıdır.
- Görsel ve performans testleri: Oluşturulan ekran görüntülerini bir temel çizgiyle karşılaştırır ve arayüzün ne kadar hızlı çizildiğini ve yanıt verdiğini, örtüşmeyi ölçer.ping 'da performans testi.
Çoğu ekip bu beş testin tamamını uygular ancak ağırlıklarını farklı şekilde belirler: halka açık bir web sitesi uyumluluk ve erişilebilirliğe, dahili bir kontrol paneli ise işlevsel kontrollere ağırlık verir.
GUI testlerinde neleri kontrol edersiniz?
Aşağıdaki kontrol listesi Yazılım Testinde detaylı GUI Testi yapılmasını sağlayacaktır.
- Tüm GUI öğelerini boyut, konum, genişlik, uzunluk ve karakter veya sayıların kabulü açısından kontrol edin. Örneğin, giriş alanlarına giriş sağlayabilmeniz gerekir.
- GUI'yi kullanarak uygulamanın amaçlanan işlevselliğini yürütebildiğinizi kontrol edin
- Hata Mesajlarının doğru şekilde görüntülendiğini kontrol edin
- Ekranda farklı bölümlerin net sınırlarının belirlenip belirlenmediğini kontrol edin
- Bir uygulamada kullanılan Yazı Tipinin okunabilir olup olmadığını kontrol edin
- Metnin hizalamasının uygun olup olmadığını kontrol edin
- Yazı tipinin rengini ve uyarı mesajlarının estetik açıdan hoş olup olmadığını kontrol edin
- Görüntülerin netliğinin iyi olup olmadığını kontrol edin
- Resimlerin 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
Kontrol listesi oluşturulduktan sonraki adım, bunun nasıl uygulanacağına karar vermektir. GUI Test Teknikleri üç bölüme ayrılabilir:
Manuel Tabanlı Test
Bu yaklaşım kapsamında grafik ekranlar, iş gereksinimleri dokümanında belirtilen gereksinimlere uygun olarak test uzmanları tarafından manuel olarak kontrol edilmektedir.
Kaydet ve Tekrar Oynat
GUI testleri otomasyon araçları kullanılarak yapılabilir. Bu işlem iki aşamada gerçekleştirilir. Kayıt aşamasında, test adımları otomasyon aracı tarafından kaydedilir. Oynatma aşamasında ise kaydedilen test adımları test edilen uygulamada yürütülür. Bu tür araçlara örnek olarak şunlar verilebilir: QTP.
Model Tabanlı 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 verimli test senaryoları oluşturmaya yardımcı olur. Aşağıdaki diyagram, bir modelin test oluşturmayı nasıl yönlendirdiğini göstermektedir:
Bu model tabanlı test için aşağıdaki hususların dikkate alınması gerekmektedir:
- 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
- Model üzerinde daha fazla işlem yapılmasına ilişkin 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şturmaya yönelik gelişen bir tekniktir. Yukarıdaki iki yöntemle karşılaştırıldığında ana avantajı, GUI'nizin ulaşabileceği istenmeyen durumları belirleyebilmesidir.
Manuel ve Otomatik GUI Testi Karşılaştırması
Bu üç teknikten ikisi manuel, biri ise otomatiktir; bu da her birinin nerede yer alması gerektiği sorusunu gündeme getiriyor. Manuel test Ekranın önüne bir insan koyuyor, böylece garip iş akışlarını, beceriksiz ifadeleri ve yanlış hissettiren animasyonları yakalıyor; hiçbir senaryonun yapamayacağı yargıları.
Otomatik test Aynı etkileşimleri binlerce kez yorulmadan tekrarlar; bu da onu istikrarlı regresyon yolları ve birçok tarayıcıda tek bir test paketini tekrarlamak için doğru çözüm haline getirir. Dezavantajı ise bakımdır: Otomatikleştirilmiş GUI komut dosyaları, konum belirleyici veya düzen değiştiğinde bozulur. Bu nedenle, çoğu olgun ekip, tekrarlanabilir işlemleri otomatikleştirerek ve deneyimsel işlemler için insan gücü ayırarak hibrit bir yaklaşım kullanır.
| faktör | Manuel GUI Testi | Otomatik GUI Testi |
|---|---|---|
| İçin en iyisi | Yeni ekranlar, keşif amaçlı kontroller, görünüm ve his | Kararlı regresyon test paketleri, tarayıcılar arası testler |
| Döngü başına hız | Yavaş, test cihazının çalışma saatleriyle sınırlı | Hızlı, gece boyunca gözetimsiz çalışır. |
| Peşin maliyet | Düşük | Yüksek (komut dosyası yazımı ve çerçeve kurulumu) |
| Bakım | Kontrol listesini güncellemenin ötesinde bir şey yok. | Arayüz değiştiğinde önem kazanır. |
| Öznel sorunları yakalıyor. | Evet | Yok hayır |
Örnek GUI Test Test Durumları
GUI Testi temel olarak şunları içerir:
- Elemanların boyutunun, konumunun, genişliğinin ve yüksekliğinin test edilmesi.
- 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.
- Ekranın 640 x 480, 600 x 800 gibi farklı çözünürlüklerde yakınlaştırma ve uzaklaştırma yardımıyla test edilmesi.
- Metinlerin ve simgeler, düğmeler vb. diğer öğelerin hizasının doğru yerde olup olmadığının test edilmesi.
- Yazı tiplerinin renklerini test etme.
- Hata mesajlarının, uyarı mesajlarının renklerinin test edilmesi.
- Görüntünün iyi bir netliğe sahip olup olmadığının test edilmesi.
- Görüntülerin hizalanmasının test edilmesi.
- Yazım testi.
- Kullanıcı sistem arayüzünü kullanırken sinirlenmemelidir.
- Arayüzün doğru konumda olup olmadığını test etmetracOlumlu ya da olumsuz.
- Varsa sayfanın boyutuna göre kaydırma çubuklarının 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
Yukarıdaki liste gerçek bir ekrana uygulandığında çok daha anlaşılır hale gelir, bu nedenle burada aşağıdaki diyalog için bazı örnek test durumları kullanacağız.
Aşağıda, kullanıcı arayüzü ve kullanılabilirlik test senaryolarından oluşan test senaryoları örneği verilmiştir. Test senaryoları yazmaya yeni başlıyorsanız, aşağıdaki adımları izleyin. test vakaları nasıl yazılır İlk.
Test durumu 01 – “ etiketine sahip metin kutusunun doğrulandığını kontrol edin.Kaynak dosya” düzgün şekilde hizalanmıştır.
Test durumu 02 – “ etiketine sahip metin kutusunun doğrulandığını kontrol edin.paket” düzgün şekilde hizalanmıştır.
Test durumu 03 – Etiketteki ismi doğrulayın.Araştır” Metnin sonunda bulunan bir düğmedirBox “ ismiyleKaynak dosya".
Test durumu 04 – Etiketteki ismi doğrulayın.Araştır” Metnin sonunda bulunan bir düğmedirBox “ ismiylepaket".
Test durumu 05 – “ etiketine sahip metin kutusunun doğrulandığını kontrol edin.İsim” düzgün şekilde hizalanmıştır.
Test durumu 06 – Etiketin “Düzenleyiciler” genel, varsayılan, özel, korumalı adında 4 radyo düğmesinden oluşur.
Test durumu 07 – Etiketin “Düzenleyiciler”, arka arkaya düzgün şekilde hizalanmış 4 radyo düğmesinden oluşur.
Test durumu 08 – Etiketin “üst sınıf"" etiketi altındaDüzenleyiciler”, uygun şekilde hizalanması gereken bir açılır menüden oluşur.
Test durumu 09 – Etiketin “üst sınıf” etiketli bir düğmeden oluşurAraştır”üzerinde düzgün şekilde hizalanması gerekir.
Test durumu 10 – Herhangi bir radyo düğmesine tıkladığınızda varsayılan fare imlecinin el imlecine değiştiğini doğrulayın.
Test durumu 11 – Kullanıcının açılır menüye yazı yazamamasını doğrulayın.üst sınıf".
Test durumu 12 – Yanlış bir seçim yapılması durumunda mutlaka doğru bir hata mesajı oluşturulduğundan emin olun.
Test durumu 13 – Hata mesajının gerekli olduğu her yerde KIRMIZI renkte gösterildiğinden emin olun.
Test durumu 14 – Hata mesajlarında doğru etiketlerin kullanıldığından emin olun.
Test durumu 15 – Tekli radyo düğmelerinin her seferinde varsayılan olarak seçili olduğundan emin olun.
Test durumu 16 – Atlama işlemi sırasında TAB tuşunun düzgün çalıştığından emin olun.ping Önceki alanın yanındaki başka bir alanda.
Test durumu 17 – Tüm sayfaların doğru başlığı içerdiğinden emin olun.
Test durumu 18 – Sayfa metninin doğru hizalanmış olduğundan emin olun.
Test durumu 19 – Herhangi bir alanı güncelledikten sonra uygun bir onay mesajının görüntülendiğinden emin olun.
Test durumu 20 – Yalnızca 1 radyo düğmesinin seçili olduğundan ve birden fazla onay kutusunun seçili olabileceğinden emin olun.
GUI Testindeki Zorluklar
Bu davaları yazmak kolaydır; devam edin.ping Onları birkaç sürüm boyunca hayatta tutmak mümkün değil. Yazılım mühendisliğinde, bunu yaparken en sık karşılaşılan sorunlardan biri şudur: Gerileme testi uygulama GUI'sinin sık sık değişmesidir. Bunun bir sorun mu yoksa iyileştirme mi olduğunu test etmek ve belirlemek çok zordur. GUI değişiklikleriyle ilgili herhangi bir belgeniz olmadığında sorun ortaya çıkıyor.
⚠️Uyarı: Ekran koordinatlarına veya otomatik olarak oluşturulan kimliklere göre öğeleri bulan komut dosyaları, bir sonraki derlemede başarısız olacaktır. Konum belirleme stratejisini sonradan eklenmiş bir şey olarak değil, tasarımın bir parçası olarak ele alın.
GUI Test Araçları
Doğru ekipman, bu karmaşanın büyük bir kısmını ortadan kaldırır. Aşağıda popüler ekipmanların bir listesi bulunmaktadır. GUI Test Araçları :
- Selenium
- QTP
- Cucumber
- İpek Testi
- TestComplete
- Squish GUI Test Cihazı
Öğrenmek için buraya tıklayın Selenium, QTP & Cucumber.
Otomatik UI Testi gerçekleştirmek için kullanılabilecek açık kaynaklı araçlar aşağıda listelenmiştir.
| PLATFORM | Lisanslı |
|---|---|
| AutoHotkey | LPG |
| Selenium | Apache |
| sikuli | İLE |
| Robot Çerçevesi | Apache |
| Su - Water | BSD |
| Dojo Araç Seti | BSD |
sikuli Görüntü tabanlıdır ve kontrol noktasının güvenilir bir konum belirleyicisi olmadığında kullanışlıdır; Selenium varsayılan değer olarak kalır. web uygulaması testi.






