3.2.2016
5.00 / 1 oy

Yazılım Testi Nedir?

Yazılım Testi Nedir?

Yazılım testi, bir yazılımın, kendisinden beklenenleri karşılayıp karşılamadığını belirlemek amacıyla yapılan eylemler bütünüdür. Yazılımdaki hataların bulunup düzeltilerek gereksinimlere uygun hale getirilmesi ve dolayısıyla yazılımın kalitesinin artırılması için yazılım yaşam döngüsü boyunca yapılan eylemleri içerir.

Test, yazılım "yaşam" döngüsü boyunca süren bir çalışma olduğuna göre yazılım ürünü müşteriye teslim edildiğinde biten bir iş de değildir. Çünkü müşteriye verilmiş yazılım hala "yaşayan" yani kullanılan bir üründür. Bir yazılım, müşteride kullanıldığı sürece gerek bakım faaliyetleri gerek yeni özelliklerin eklenmesi vesilesi ile müşteriye teslim edildikten sonra bile değişecektir ve her değişiminde de tekrar test edilecektir. Artık kullanılmayıp bir kenara atıldığında da o yazılımın "yaşamı" bitecek ve teste ihtiyacı kalmayacaktır.

Yazılım yaşam döngüsü, ana hatlarıyla, gereksinimlerin belirlenmesi, tasarım, geliştirme ve test evrelerinden oluşur. Geliştirme evresinden sonra gerçekleştirilen testler artık çalışan bir yazılım üzerinde yapılan testlerdir. Önceki evrelerde yapılanlar ise dokümanlar üzerinden yapılan gözden geçirmeler ile kod üzerinde yapılan beyaz kutu testleridir. Buradan da anlaşılacağı üzere yazılım testleri sadece geliştirilen kod parçaları üzerindeki hataların bulunması işlerini değil, geliştirme çalışmaları sırasında hata oluşmasını önlemek amacıyla daha ilk evrelerde kullanılan yöntem ve yaklaşımları da içerir. Bir hatanın düzeltilmesinin maliyeti o hatanın hangi evreden kaynaklandığı ile doğrudan ilgilidir. Örneğin gereksinim aşamasında yapılan bir hata, bitmek üzere olan bir yazılım parçasının büyük oranda yeniden yazılmasını gerektirebilir. Gereksinimi düzeltmek üç beş satırlık bir iş iken bu hatalı gereksinimin sebep olduğu kod parçası değişikliği zaman ve kaynak kaybı açısından büyük bir maliyettir.

Test işleri yazılım yaşamının tüm evrelerini ilgilendiren bir eylemler bütünü olduğuna göre kendisi de planlaması, analiz ve tasarımı, çalıştırması, sonlandırılıp değerlendirilerek raporlaması olan başlı başına bir süreçtir. Bu süreç boyunca hatalar bulunur, yazılımın gereksinimleri yani kullanıcı ihtiyaçlarını karşılayıp karşılamadığı görülür, düzeltmeler yapılır. Hatayı erken tespit etme ve hatta önleme faaliyetlerini de içerdiği için maliyetin düşmesini sağlar, zaman kazandırır. Tüm bunlar da yazılımın kalitesini doğrudan yükseltir, müşterinin memnuniyetini ve güvenini kazandırır.

Test eylemlerinin hacmi projenin karmaşıklığına göre değişir. Projeye göre kullanılacak test tipleri ve test teknikleri de değişir. Ne kullanılırsa kullanılsın amaç, yazılımın hatalarını bulup düzelte düzelte artık hatasız olduğunu kanıtlamak değildir. Test işlemi hata bulmak için yapılır. Bir yazılımda artık hata bulunmuyor olması onun sıfır hatalı olduğu anlamına gelmez. Eldeki tekniklerle, seçilen sınırlı sayıda testlerin koşturulmasıyla artık hata bulunamıyor anlamına gelir. Belki de testlere yeni bir test senaryosu eklendiğinde beklenmedik bir hata bulunabilecektir. Detaylı yani hiçbir noktası atlanmamış testler yapmak imkansızdır. Sıfıra yakın hata için test kapsamı çok geniş tutulmalıdır. Bir yazılımın bir versiyonunun testlerinin sonlandırılması riske bağlıdır. Risk kalmayana kadar testler yapılır. Yazılımın hesaplanabilecek tüm testlerinin yapılması imkansız olacağından, kritiklik düzeylerine göre sıralanıp, yeterli görülen sayıda, en kritikleri test edilmelidir. Testin sonlandırılmasında elbette ki para ve zaman kısıtının da payı vardır.

Yazılım Testi Nedir?
Bu makalenin telif hakkı ve tüm sorumlulukları yazara ait olup, şikayetler için lütfen bizimle iletişime geçiniz.
URL:
Etiketler:

Bu makale 880 kez okundu

3.2.2016 tarihinde yazıldı
Reitix

Yorumlar

  • Eyüp Demir
    Eyüp Demir
    12.2.2018

    beyler bi yüklenin bakalım yıkılacak mı diye yapılmaması gereken, titizlikle yapılması gereken kısmi debug sürecidir. Yazılım en nihayetinde o yazılımı kodlayanların orada olmadığı esnada çalışması gereken bir teknoloji olduğu için a-z tüm olası durumlar test edilmelidir

Bu yazıya siz de yorum yapabilirsiniz