YAZILIM TEST SÜREÇLERİ NASIL İLERLER?

Ahmet Ergin
4 min readApr 18, 2021

--

Değişen ve Gelişen dünyamızda, yazılımın ne kadar değerli ve hayatımızda vazgeçilmez bir yere sahip olduğu konusunda artık hepimiz hemfikiriz. Bu noktada yazılımlar tüketicilere sunulan ürünler oldular ve test edilebilir bir yapıya sahip oldular. Bu yapılara uygulanan testler genel olarak sistem kalitesi hakkında güvence sağlamak için yapılır. Ancak yazılımların test edilebilmesi için belli olgunluğa ulaşmış ve kullanıcının beklentileri belirlenmiş olmalıdır. Bu gereksinimler (kullanıcı beklentileri) belirlenmiş ve yazılımın test edilecek modülleri geliştirildiği zaman, test işlemi nasıl bir yol izler? Asıl sorumuza gelirsek, Yazılımların test süreci nasıl ilerler?

1. Testlerin Planlanması

Gereksinimler doğrultusunda yapılacak olan testler ile ilgili kapsamlara ait sınırların belirlendiği kısım planlama adımıdır. Bu adımda belirlenen sınırlar dışında yapılan testler sistemin kalitesi hakkında ve gereksinimlerin ne kadar karşılandığı hakkında yanlış bilgiler verebilir. Bu nedenle bu kapsam alanı önemlidir. Sistemler üzerinde yapılacak testler belirli kriterlere göre belirlenir. Bu kriterlerin en başında sistemde oluşabilecek risklerdir. Bu riskler kesinlikle belirlenmelidir. Riskleri belirlenmiş sistemlerin test edileceği ortamlar ve hangi araçların kullanılacağı belirlenmelidir.

Test ile ilgili önemli noktalar belirlendikten sonra, bir diğer nokta olan test sürecinde kullanılacak olan giriş ve test sonucunda alınması planlanan çıkış kriterleri bu adımda belirlenir. Bu kriterler kullanıcı tarafından yapılabilecek olan işlemlerin doğruluğunu kontrol etmemizi sağlarlar. Bu noktada son olarak, testlere ait planlamalar tamamlandığı zaman testlerin yapısı hakkında bilgi içeren maddeler yazılıp süreç içerisinde kontrol edilebilmesi için düzenlenmelidir. Bu bilgiler sistemin test edildiği süreç içerisinde sürekli olarak kullanılır. Yazılımlar, test edilebilmesi için farklı yöntemler vardır. Bu yöntemlerden birisi olan statik testler planlama aşamasında yapılabilirler. Ek olarak statik testlerde kod yazılmaz, sadece gereksinimler incelenerek oluşabilecek hatalar yakalanır. Farklı bir açıdan bakacak olursak statik testler, tecrübelere dayanan testlerdir.

Ek olarak: Planların bulunduğu dokümanlar genelde 2 farklı şekilde oluşturulur. Bunlar Bir sayfalık test planı ve Master test planı olarak adlandırılır. Bir sayfalık test planı kısa ve öz bilgiler içerirken, master test planı test stratejisinden, sistemin veya şirketin teste yaklaşımı dahil test ile ilgili her konuya açıklık getirilmiş test planıdır. Bu planlar şirket veya ekip politikasına göre farklılık gösterebilir. Kısacası bir sayfalık test planı bir özet içerirken, master test planı bir ansiklopedi gibi düşünülebilir.

2.Testlerin Analizleri ve Tasarımları

Planlama aşamasında testin nasıl yapılacağı ile ilgili süreç ve araçlar hakkında bir yol haritası oluşturulduktan sonra artık bu noktada testlerin tasarlanması gerekir. Testlerin yapılabilmesi için anahtar olan test senaryoları, yapılan bu tasarımları temel olarak alır. Ayrıca planların gerçekleştirilebilmesi için ortamlar kurulmalıdır. Test için gerekli olan veriler bu aşamada ayarlanırlar. Bu veriler, kullanıcı girişi yapılacak olan sayfa için kullanıcı adı ve şifre olabilir. Başka bir örnek olarak; Banka işlemleri ile ilgili yapılacak testlerde işlem yapılan hesapta para bulunması olarak düşünülebilir. Bu aşamanın son işlemi testler başlamadan önce bilinmesi gereken dokümanlar burada tekrar gözden geçirilir.

3. Testlerin Gerçekleştirilmesi

Yapılacak olan testler ile ilgili planlama aşamasında çıkardığımız yol haritasını, tasarımlar ile gerçekleştirilmesi, olası bir hale getirdikten sonra bu aşamada testler gerçekleştirilir. Kısacası, test senaryolar yazılıp, bu senaryolar doğrultusunda testler koşturulur. Yapılan fonksiyonel ve fonksiyonel olmayan testlerden sonra hatalar tespit edilmiştir artık. Bu hatalar üzerine yazılımcılar ile görüşüp bu hataların düzeltilmesi işlemi talep edilir. Yazılımcı tarafından düzeltilen ve test işlemine tekrar gönderilen modüller test edilmeden önce etki analizi tespiti yapılmalıdır.

Etki Analizi Nedir?

Test işleminde önemli kavramlardan birisidir etki analizi. Belli bir alanı test ettikten sonra hata bulunduğunda yazılımcı bu hataları çözer ama tekrar test etmek gerektiği zaman projede hatayı çözmek için değiştirilen kısımların etki ettiği sınıflar, fonksiyonlar veya paketler yeniden uygulanacak testin kapsamına girer. Bu tekrar test için belirlenmiş alan etki analizi olarak adlandırılır.

Yapılan testlerden sonra sistemin durumunun kontrol edilmesi için planlama aşamasında belirtilen testin giriş kriterleri, bu aşamada sistemin çıkış kriterleri belirlenir. Bütün sistem en son olarak regresyon testine koşulur.

4. Raporlama ve Testin Kapatılması

Sistem üzerine gerekli testler koşulmuştur. Giriş kriterleri ile çıkış kriterleri karşılaştırılır. Bu karşılaştırma sayesinde sistemin kalitesi hakkında bilgiler elde edilmiştir. Ayrıca testler sayesinde sistemlerin kalitesi hakkında gerekli olan bilgiler elde edilmiş olur. Bütün bu sürecin sonunda yapılan işlemler ve izlenen yollar hakkında ayrıntılı bir rapor yazılması gerekmektedir.

Eğitimleri ve gösterdikleri ilgiden dolayı Alper Buğra Keleş ve Neşe Ceylan Aydın’a teşekkür ederim.

--

--