İşlevsel Olmayan Testler

⚡ Akıllı Özet

İşlevsel Olmayan Testler, bir yazılım uygulamasının güvenilirlik, kullanılabilirlik, güvenlik, ölçeklenebilirlik ve diğer kalite özellikleri açısından nasıl performans gösterdiğini doğrular. Bu kılavuz, kalite güvence ekipleri tarafından kullanılan hedefleri, parametreleri, özellikleri, yaygın test türlerini ve pratik örnek test senaryolarını açıklamaktadır.

  • 🎯 Kalite Odağı: İşlevsel olmayan testler, bir sistemin ne yaptığından ziyade nasıl performans gösterdiğini ölçer.
  • 📏 Ölçülebilir Kriterler: Her gereksinim nicel olarak ifade edilir ve "iyi", "daha iyi" veya "en iyi" gibi öznel ifadeler ortadan kaldırılır.
  • 🔐 Kritik Parametreler: İşlevsel olmayan doğrulama yöntemlerinde güvenlik, güvenilirlik, ölçeklenebilirlik, kullanılabilirlik ve taşınabilirlik ön plandadır.
  • 🧪 Çeşitli Test Türleri: Performans, yük, stres, toparlanma ve uyumluluk testlerinin her biri belirli kalite risklerini ele alır.
  • 📊 İş Etkisi: Güçlü işlevsel olmayan testler, üretim maliyetlerini, arıza sürelerini ve ürün sürümlerindeki müşteri memnuniyetsizliğini azaltır.

İşlevsel Olmayan Testler

İşlevsel Olmayan Test Nedir?

İşlevsel Olmayan Testler Yazılım testlerinin bir kategorisi olan test, bir uygulamanın işlevsel olmayan yönlerini (performans, kullanılabilirlik, güvenilirlik ve benzeri kalite özellikleri) doğrular. Fonksiyonel testlerin asla ele almadığı kriterlere göre sistemin hazır olup olmadığını değerlendirir ve uygulamanın gerçek dünya koşullarında kurumsal beklentileri karşıladığından emin olur.

İşlevsel olmayan testin klasik bir örneği, performans düşüşü olmadan bir uygulamaya kaç eş zamanlı kullanıcının giriş yapabileceğini ölçmektir. İşlevsel olmayan test, müşteri memnuniyetini ve genel ürün algısını doğrudan etkilediği için işlevsel test kadar kritiktir.

İşlevsel Olmayan Testin genel bakış diyagramı nedir?

Fonksiyonel Olmayan Testlerin Amaçları

İşlevsel olmayan testler, bir ürünün genel kalitesini ve ömrünü iyileştirmek için yapılır. Başlıca amaçlar şunlardır:

  • Ürünün kullanılabilirliğini, verimliliğini, bakım kolaylığını ve taşınabilirliğini artırın.
  • Üretim riskini ve işlevsiz kusurlarla ilişkili maliyeti azaltın.
  • Ürünün kurulum, yapılandırma, çalıştırma, yönetim ve izleme yöntemlerini optimize edin.
  • Dahili araştırma ve geliştirme için ölçümler ve metrikler toplayın.
  • Ürünün davranışını ve kullanılan teknolojileri daha iyi anlamayı sağlayın.

Fonksiyonel Olmayan Testlerin Özellikleri

Aşağıdaki özellikler, işlevsel olmayan testlerin nasıl planlanması ve yürütülmesi gerektiğini tanımlar:

  • Ölçülebilir olmalı, iyi, daha iyi veya en iyi gibi öznel tanımlamalara yer bırakmamalıdır.
  • Gereksinim belirleme sürecinin başlangıcında kesin rakamlar genellikle bilinmemektedir.
  • Gereksinimler önceliklendirilmeli ve en yüksek riskli alanlara ilk önce odaklanılmalıdır.
  • Yazılım mühendisliği aşamasında kalite nitelikleri doğru bir şekilde belirlenir.

İşlevsel Olmayan Test Parametreleri

İşlevsel olmayan test çalışmalarının kapsamını belirlemek için genellikle on bir parametre kullanılır:

  1. Güvenlik: Bir sistemin, iç veya dış kaynaklardan gelebilecek kasıtlı ve kaz accidental saldırılara karşı nasıl korunduğunu ölçer. Güvenlik testleri yoluyla doğrulanır.
  2. Güvenilirlik: Bir sistemin belirtilen işlevlerini hatasız ve sürekli olarak yerine getirme derecesi. Güvenilirlik Testi ile doğrulanır.
  3. Hayatta kalma: Sistem arızadan sonra çalışmaya devam ettiğini ve kendini kurtardığını doğrular. Kurtarma Testi ile doğrulanmıştır.
  4. Durumu: Sistem çalışması sırasında kullanıcının sisteme ne kadar güvenebileceğini belirler. Kararlılık testleri ile doğrulanmıştır.
  5. Kullanılabilirlik: Kullanıcıların sistemi öğrenme, çalıştırma, girdi hazırlama ve çıktı tüketme kolaylığı. Kullanılabilirlik Testleri ile doğrulanmıştır.
  6. Ölçeklenebilirlik: Bir yazılım uygulamasının artan talebi karşılamak için işlem kapasitesini ne ölçüde genişletebileceğinin derecesi. Ölçeklenebilirlik Testi ile doğrulanır.
  7. Birlikte çalışabilirlik: Bir yazılım sisteminin diğer yazılım sistemleriyle nasıl arayüz oluşturduğunu kontrol eder. Birlikte Çalışabilirlik Testi yoluyla doğrulanır.
  8. Verimlilik: Sistemin yük altında kapasite, miktar ve tepki süresini ne kadar iyi yönetebildiği.
  9. Esneklik: Uygulamanın, farklı RAM veya CPU özellikleri gibi çeşitli donanım ve yazılım yapılandırmalarında sorunsuz bir şekilde çalışabilmesi.
  10. Esneklik: Yazılımın mevcut donanım veya yazılım ortamından bir diğerine geçebilme esnekliği.
  11. Tekrar Kullanılabilirlik: Bir yazılım sisteminin başka bir uygulamada kullanılmak üzere uyarlanabilen bölümünü ifade eder.

İşlevsel olmayan test parametreleri diyagramı

Yazılım Testi Türü

Yazılım testleri genel olarak üç kategoriye ayrılır:

  • Fonksiyonel Testler
  • İşlevsel Olmayan Testler
  • Bakım Testi

Her kategori, ekiplerin genellikle test türleri olarak adlandırdığı birden fazla test seviyesi içerir. Farklı kitaplar ve referans kaynakları bunları biraz farklı şekilde sınıflandırabilir, bu nedenle küçük farklılıklar bekleyin.

Test türleri listesi kapsamlı değildir; 100'den fazla farklı test türü mevcuttur ve yenileri ortaya çıkmaya devam etmektedir. Her tür her projeye uygun değildir; kapsam, test edilen uygulamanın niteliğine, risk profiline ve karmaşıklığına bağlıdır.

İşlevsel Olmayan Test Türleri

Kalite güvence ekipleri tarafından gerçekleştirilen en yaygın işlevsel olmayan test türleri şunlardır:

  • Performans testi
  • Yük Testi
  • Yük Devretme Testi
  • Uyumluluk Testi
  • Kullanılabilirlik testi
  • Stres testi
  • Sürdürülebilirlik Testi
  • Ölçeklenebilirlik Testi
  • Hacim Testi
  • Güvenlik Testi
  • Felaket Kurtarma Testi
  • Uyum testi
  • Taşınabilirlik Testi
  • Verimlilik Testi
  • Güvenilirlik Testi
  • Temel Test
  • Dayanıklılık Testi
  • Dokümantasyon Testi
  • Kurtarma Testi
  • Uluslararasılaştırma Testi

Fonksiyonel Olmayan Testler İçin Örnek Test Senaryoları

Aşağıdaki örnekler, gerçek projelerde işlevsel olmayan test senaryolarının nasıl yazıldığını göstermektedir:

Test durumu # Test Durumu domain
1 Aynı anda 1000 kullanıcıya kadar erişim sağlandığında uygulamanın yüklenme süresi 5 saniyeyi geçmemelidir. Performans testi
2 Yazılım, desteklenen tüm sürümlere yüklenebilir olmalıdır. Windows ve macOS. Uyumluluk Testi
3 Tüm web görselleri açıklayıcı alt etiketleri içermelidir. Erişilebilirlik Testi

SSS

Fonksiyonel testler, sistemin belirtilen gereksinimlere göre ne yaptığını doğrular. Fonksiyonel olmayan testler ise sistemin performansını (hız, güvenilirlik, kullanılabilirlik ve güvenlik dahil) ölçerek uygulamanın temel özellik davranışının ötesinde kalite standartlarını karşılamasını sağlar.

Popüler araçlar şunları içerir: JMeter ve performans için LoadRunner, Selenium kullanılabilirlik otomasyonu için, Burp Suite Güvenlik için OWASP ZAP ve uyumluluk için BrowserStack kullanılıyor. Her araç, kalite güvence ekiplerinin ölçmek istediği belirli bir işlevsel olmayan alanı hedefliyor.

Sistem işlevsel olarak kararlı hale geldikten ve büyük sürümlerden önce işlevsel olmayan testlere başlanmalıdır. Performans, güvenlik ve güvenilirlik testleri genellikle test aşamalarının sonlarına doğru planlanır, ancak "sol tarafa kaydırma" stratejileri geliştirme ile birlikte daha erken yürütmeyi teşvik eder.

Her parametre ölçülebilir eşik değerlere göre değerlendirilir. Performans, yanıt süresi ve verimlilikle, güvenlik güvenlik açığı sayılarıyla, kullanılabilirlik görev tamamlama oranlarıyla ve güvenilirlik ise arızalar arası ortalama süreyle ölçülür. Numbers öznel görüşlerin yerini al.

İkisi de. Performans, yük, stres ve güvenlik testleri, ölçeklenebilirlik ve tekrarlanabilirlik nedeniyle büyük ölçüde otomasyona dayanır. Kullanılabilirlik ve erişilebilirlik testleri ise genellikle otomatik araçların yanı sıra manuel gözlem, uzman incelemeleri veya yardımcı teknoloji kontrolleri gerektirir.

Yapay zeka, yük profilleri oluşturur, performans darboğazlarını tahmin eder, riskli test senaryolarını önceliklendirir ve günlük verilerini otomatik olarak analiz eder. Yapay zeka destekli platformlar, yürütme süresini azaltır ve hataları daha hızlı ortaya çıkarır.ping Kalite güvence ekipleri, işlevsel olmayan kapsamları sürümler genelinde genişletir.

Hayır. Yapay zeka taramaları, temel oluşturmayı ve anormallik tespitini hızlandırır, ancak uzman testçiler yine de sonuçları yorumlar, güvenlik açığı zincirlerini doğrular ve test senaryoları tasarlar. Yapay zeka, deneyimli QA mühendislerinin yerini almak yerine, işlevsel olmayan testlerde insan yargısını destekler.

Bu yazıyı şu şekilde özetleyin: