top of page

Web Yazılımında Test Türleri: Yeni Başlayanlar İçin Kapsamlı Rehber

Web yazılımında test türleri denildiğinde akla genelde karmaşık terimler, teknik dokümanlar ve bolca kod satırı gelir. Oysa bu konu, doğru bir şekilde anlatıldığında oldukça anlaşılır ve hatta keyifli bir öğrenme sürecine dönüşebilir. Şimdi gelin, bu dünyaya bir testçi olarak göz atalım.


Web yazılımı geliştirmek, bir evi inşa etmeye benzer. Nasıl ki inşaattan önce sağlam bir temel, doğru malzeme ve güvenli bir plan gerekiyorsa, yazılımda da her şeyin doğru çalıştığından emin olmak için testler gerekir. İşte bu noktada web yazılımında uyguladığımız test türleri devreye girer.


Test Türleri Görseli

Öncelikle şunu bilmek gerekir: Her test aynı amaca hizmet etmez. Tıpkı bir binanın su tesisatıyla elektrik tesisatının farklı uzmanlıklar gerektirmesi gibi, yazılım testlerinin de kendi alanları vardır. Evet, bu testleri çoğu uygulamaya uygularız ancak bazı domain veya platformlar kendilerine özgü test etme şekillerini içinde barındırır. Mesela bir browser ile bir mobil uygulama birbirine benzemez, telefonu yan çevirdiğinizde uygulama yön değiştirebilir ancak bu browser da olmaz ve bu test edilmesi gereken farklı bir dinamiktir. Biz standartlardan başlayalım.


Web Yazılımında Test Türleri

Fonksiyonel Testler

Yazılımın olması gerektiği gibi çalışıp çalışmadığını kontrol eder. Bir butona tıkladığında doğru sayfa açılıyor mu, form doldurduğunda veriler doğru şekilde kaydediliyor mu, işte bunlar fonksiyonel testlerin konusudur.


Bir de çoğu zaman atlanan ama kullanıcıyı çok kötü etkileyen performans testleri vardır.


Performans Testleri

Bu testler, yazılımın ne kadar hızlı, ne kadar dayanıklı olduğunu ölçer. Mesela yüzlerce kişi aynı anda siteye girdiğinde sayfalar yavaşlıyor mu, sistem hata veriyor mu, bunu anlamak için performans testleri yapılır.


Güvenlik Testleri

Adından da anlaşılacağı gibi, yazılımın dış tehditlere karşı ne kadar korunaklı olduğunu gösterir. Kimsenin verilerine izinsiz erişememesi, gizli bilgilerin şifrelenmesi, açık kapıların kapatılması gibi konular bu testlerin alanına girer.


Bir diğer önemli tür ise kullanılabilirlik testleridir.


Kullanılabilirlik Testleri

Evet, yazılım hızlı olabilir, güvenli olabilir ama kullanıcı onu kullanmakta zorlanıyorsa, bir yerlerde problem vardır. Kullanılabilirlik testleri, yazılımın ne kadar anlaşılır ve kolay kullanılır olduğunu ölçer.


Bunların dışında uyumluluk testleri, erişilebilirlik testleri ve daha birçok alt kategori vardır. Her biri yazılımın başka bir yönünü kontrol eder. Böylece ortaya sadece çalışan değil, hızlı, güvenli ve kullanıcı dostu bir ürün çıkar.


Sonuç olarak, web yazılımında test türleri aslında geliştiricilerin ve test mühendislerinin hayatını kolaylaştıran, kullanıcıların da sorunsuz bir deneyim yaşamasını sağlayan bir güvence mekanizmasıdır. Bu testler olmazsa, yazılımda gizli hatalar ortaya çıkabilir, bu da hem zaman hem para hem de kullanıcı güveni kaybına yol açar.


Web’in Doğası Gereği Farklılıklar

Web uygulamaları diğer uygulamalardan farklı olarak tarayıcılar üzerinde çalışır ve genelde internet bağlantısına bağımlıdır. Bu da testte bazı özel durumları ortaya çıkarır:


Tarayıcı farkları (Cross-Browser Testing)

Chrome’da harika çalışan bir buton, Safari’de kayabilir veya görünmeyebilir. Tarayıcı motorlarının farklı davranması, testlerde özel kontroller gerektirir. Bu nedenle test planınızı oluştururken muhakkak kullanıcıların en çok tercih ettiği veya kullandığı üç browser için kontroller sağlamalısınız.


Cihaz çeşitliliği (Cross-Device Testing)

Telefon, tablet, masaüstü, farklı ekran boyutları… Responsive tasarım testleri burada devreye girer. En çok karşılaşılan sorunlardan biri masaüstü browser da gözüken bir alanın, metnin veya butonun cihaz browserlarında yeterince düzdün görüntülenmemesidir.


Bağlantı hızı değişkenliği

Yüksek hızda sorunsuz açılan bir sayfa, yavaş bir bağlantıda yüklenmeyebilir. Bu yüzden farklı internet hızları simüle edilerek test yapılır. Bunu yapmanın en rahat yolu mobil bir browser kullanırken hücresel veri hızınızı cihaz ayarlarından düşürmek ve uygulamanın davranışlarını gözlemlemektir. Yavaş cevap veren uygulamalar çeşitli time-out hataları vererek uyguylamalarda çökmeler meydana getirebilir. Bu da geliştirici ekibinin manuel müdahele gerektirecek işleri arasında yer alabilir.


Kullanıcı sayısının anlık artışı

Web’de trafik dalgalanması çok yaygındır. Bir kampanya döneminde ziyaretçi sayısı patlayabilir. Bu nedenle yük (load) ve stres (stress) testleri yapılır. Fonkiyonel olmayan bu test daha çok farklı ekipler tarafından yapılsa da tüm test mühendislerinin bilmesi gereken bir konudur.


Peki bilgilerin temelini oluşturduk neler yapılabilir birazda bundan bahsedelim. Test yaparken en çok yapılan hatalardan biri bir kullanıcı gibi düşünmemektir. Unutmayın hepimiz birer kullanıcıyız ve gün içerisinde sayısız uygulama ve web sitesi kullanıyoruz. Bizi rahatsız eden ne varsa kullanıcılarınızıda edebilir. Bu göz ile testleri gerçekleştirmek aslındagörünmeyi göstermek konusunda size çok yardımcı olacaktır.


Web’e Özel Test Yöntemleri

Web testi, genel test türlerinden bazılarını alır ama onlara web’e özgü eklemeler yapar.


Fonksiyonel Testler (Functional Testing)

Buton, form, link gibi web bileşenlerinin çalıştığını doğrular. Web’de ayrıca:

  • Form alanlarının doğru validasyon yapması

  • Linklerin kırık olmaması

  • Navigasyon menülerinin tüm sayfalarda doğru çalışması kontrol edilir.


Kullanılabilirlik Testleri (Usability Testing)

Web testinde kullanıcı deneyimi çok kritiktir:

  • Menülerin kolay bulunması

  • Butonların tıklanabilir boyutlarda olması

  • Göz yormayan renk ve yazı tipi seçimi

  • Mobil uyumluluk


Performans Testleri (Performance Testing)

Web’de performans testi:

  • Sayfa yüklenme süreleri

  • Sunucu yanıt süreleri

  • Trafik altında sistemin davranışı


Bunları özellikle sayfayı sağ tıklayarak ve incele dedikten sonra network tab'ından inceleyebilirsiniz.


Güvenlik Testleri (Security Testing)

Web uygulamaları internet üzerinden erişildiği için saldırıya daha açıktır.

  • SQL Injection

  • XSS (Cross-Site Scripting)

  • CSRF (Cross-Site Request Forgery)

  • HTTPS yapılandırma kontrolü

  • Güvenli cookie yönetimi


Bu alan ek bir uzmanlık gerektirdiğinden temel seviye bilgi sahibi olmanız olayı anlamanız açısından ve QA Mindset'inizi güçlendirme açısından önemlidir.


Uyumluluk Testleri (Compatibility Testing)

Web uygulamasının:

  • Farklı tarayıcılarda (Chrome, Firefox, Safari, Edge…)

  • Farklı cihaz ve işletim sistemlerinde

  • Farklı ekran çözünürlüklerinde düzgün çalıştığının doğrulanması.


Erişilebilirlik Testleri (Accessibility Testing)

  • Ekran okuyucularla uyum

  • Renk kontrastı kontrolleri

  • Alternatif metinlerin kullanımı

  • Klavye ile gezinebilirlik


Web Testinde Ortaya Çıkan Ek Zorluklar

Dinamik içerik

(SPA – Single Page Application) testlerinin zor olması. Eğer sayfada sürekli değişen veriler varsa bu sayfalarda belirli bir verinin doğruluğunu sağlamak çoğunlukla zor olacaktır. Dinamik sayfalar özellikle çoklayıcı veya tekrarlayıcı biçimde çalıştığı için bir alanın kopyası şekilnde kendini devam ettirir bu da kontrol edeceğiniz bilginin artması anlamına gelir. Ne şanslıyız ki otomasyon gibi araçlar ile bu zor görevler kolay halledilmektedir.


3. parti entegrasyonlar

Ödeme sistemleri, sosyal medya girişleri gibi testlerinin karmaşıklığı testlerinizde çok kez sizi zorlayacaktır. Özellikle Gerçek zamanlı güncellemeler (chat uygulamaları, canlı skor) için senaryoların daha teknik olması, SEO uyumluluğu testlerinin de işin içine girmesi (meta tag, site haritası, robot.txt kontrolü) buralara erişim problemleri veya test etmek için test datalarının oluşturulması gibi durumlar için sürekli birileri ile kontakta kalmanız gerekebilir. Bu da test sürelerinizi olmsuz etkileyecektir.


Web testi, diğer yazılım testlerinden ayrışıyor çünkü:

  • Çok daha fazla platform ve cihaz çeşitliliği var.

  • Performans ve güvenlik riskleri daha yüksek.

  • Kullanıcı deneyimi ve erişilebilirlik çok daha kritik.

  • SEO ve tarayıcı optimizasyonu gibi sadece web’e özgü konular da devrede.


Doğru yapılmazsa kullanıcı memnuniyetsizliği, müşteri kaybı ve marka zararına yol açabiliyor. Bu yüzden web testinde hem otomasyon (Selenium, Cypress, Playwright…) hem de manuel test birlikte yürütmek en mantıklı seçimdir. Unutmamalıyız ki yazılım testleri, işin sıkıcı bir formalitesi değil, bir yazılımın kalitesini, güvenilirliğini ve başarısını garanti altına alan vazgeçilmez bir adımdır. İster yeni başlayan biri olun ister yıllardır bu işin içinde, testleri hayatınızın merkezine koyduğunuzda farkı hemen hissedersiniz.


Sıkça Sorulan Sorular (SSS)

1. Web yazılımında test türleri nelerdir?

Web yazılımında test türleri; fonksiyonel testler, performans testleri, güvenlik testleri, erişilebilirlik testleri, uyumluluk testleri, kullanıcı deneyimi testleri ve otomasyon testleri gibi çeşitli kategorilere ayrılır. Her biri farklı bir kalite boyutunu değerlendirir.


2. Web yazılımı testleri neden önemlidir?

Web yazılımında test türleri, bir web uygulamasının hatasız, hızlı, güvenli ve kullanıcı dostu çalışmasını sağlar. Test süreçleri uygulanmadığında kullanıcı memnuniyeti düşer ve güvenlik açıkları oluşabilir.


3. Web uygulamalarında hangi test araçları kullanılır?

Web yazılımında test türleri için Selenium, Cypress, Playwright, JMeter, Postman, Lighthouse, Axe gibi araçlar sıkça tercih edilir. Araç seçimi, testin amacına ve projenin ihtiyaçlarına göre yapılır.


4. Web yazılımı testleri ne zaman yapılmalıdır?

Web yazılımında test türleri, geliştirme süreci boyunca düzenli olarak yapılmalıdır. En iyi yaklaşım, testleri kodlama ile paralel yürüterek olası hataları erken tespit etmektir.


5. Web yazılımında manuel test mi yoksa otomasyon test mi daha etkilidir?

Web yazılımında test türleri arasında manuel testler, kullanıcı deneyimi ve keşif testi için uygundur; otomasyon testleri ise tekrarlayan ve zaman alan görevlerde daha etkilidir. İkisi birlikte kullanıldığında en iyi sonuç elde edilir.

Yorumlar


bottom of page