Smoke (Duman) Test Nedir? Smoke Testin Hedefleri Nelerdir?

Smoke Test (Duman Testi) Nedir?

Smoke Test, yeni bir yazılım sürümünün veya yapı değişikliğinin, temel işlevselliği etkileyip etkilemediğini hızlıca kontrol etmek amacıyla kullanılır. İlk bakışta, bu test türü, yazılımın "açılışta dumanı olup olmadığını" kontrol eder. Yani, yazılımın ana işlevselliğini devre dışı bırakan büyük hataları tespit etmeyi amaçlar. Smoke test, yazılımın daha fazla aşamaya geçip geçmeyeceğine karar vermede kritik bir rol oynar. 

Smoke Testin Amaçları Nelerdir?

  • Temel işlevselliği kontrol etmek. 

  • Büyük hataları hızlıca tespit etmek. 
  • Yazılımın daha fazla test aşamasına geçip geçmemesine karar vermek. 

Smoke Test Nasıl Yapılır?

  1. Temel Fonksiyonları Belirleme:

    • İlk olarak, test edilecek sistemin temel işlevselliğini belirleyin. Hangi ana özelliklerin test edileceğini net bir şekilde anlamak önemlidir.

  2. Smoke Test Senaryolarını Oluşturma:

    • Belirlenen temel fonksiyonlar için basit senaryolar oluşturun. Bu senaryolar, sistemin çalıştığına dair temel kanıtları içermelidir.
  3. Gerekli Ortam Hazırlığı:

    • Testleri yapabilmek için gerekli ortamı hazırlayın. Bu, yazılımın çalıştığı platform, veritabanı bağlantıları, ağ bağlantıları vb. içerebilir.
  4. Smoke Testi Gerçekleştirme:

    • Oluşturulan senaryolara dayalı olarak smoke testi gerçekleştirin. Bu adımda, sistemi başlatın ve temel işlevselliğin çalışıp çalışmadığını kontrol edin.
  5. Sonuçları Değerlendirme:

    • Smoke testin sonuçlarını değerlendirin. Temel işlevselliğin başarıyla geçilip geçilmediğini belirleyin. Bu, genellikle "yeşil/yolunda" veya "kırmızı/problemli" gibi basit bir gösterge ile yapılır.
  6. Hataları ve Sorunları Kayıt Altına Alma:

    • Eğer smoke test sırasında herhangi bir hata veya sorun bulunursa, bunları kayıt altına alın. Bu, geliştirme ekibi veya ilgili birimler için düzeltmeye odaklanılması için önemlidir.
  7. İlerleme Raporlama:

    • Smoke test sonuçlarını ve bulunan hataları ilgili paydaşlarla paylaşın. İlerlemenin izlenmesi ve geliştirme sürecine entegrasyonu için düzenli raporlar sağlamak önemlidir.

Smoke Test Avantajları Nelerdir?

  1. Hızlı Geri Bildirim:

    • Smoke testleri, temel işlevselliği hızlı bir şekilde kontrol ederek geri bildirim sağlar. Bu, geliştirme sürecinin erken aşamalarında potansiyel sorunları hızlı bir şekilde tanımlamak için önemlidir.

  2. Erken Hata Tespiti:

    • Smoke testleri, yazılım geliştirme sürecinin başında veya yeni bir özellik eklemesi yapıldığında uygulandığından, potansiyel sorunları erken aşamalarda tespit etmeye yardımcı olur. Bu, daha sonraki aşamalarda düzeltme maliyetlerini azaltabilir.
  3. Temel İşlevselliğin Güvencesi:

    • Smoke testleri, temel işlevselliğin çalıştığını doğrulayarak, genel sistem stabilitesini ve kullanılabilirliğini sağlar. Bu, kullanıcıların temel işlevselliği kullanabilmelerini garanti altına alır.
  4. Verimli Kaynak Kullanımı:

    • Smoke testleri, daha kapsamlı test süitleri çalıştırmadan önce temel işlevselliği kontrol eder. Bu, gereksiz kaynak kullanımını önler ve daha fazla test aşamasına geçmeden önce büyük sorunları tespit eder.
  5. Entegrasyon Testlerine Hazırlık:

    • Smoke testleri, bir sistemdeki temel işlevselliğin çalıştığını doğrulayarak, daha kapsamlı entegrasyon testlerine geçiş için bir zemin hazırlar. Bu, sistemdeki bileşenlerin bir arada doğru bir şekilde çalıştığından emin olmayı sağlar.
  6. Test Sürecini Hızlandırma:

    • Smoke testleri, bir sistemdeki genel sağlığı hızlı bir şekilde değerlendirdiğinden, geliştirme sürecini hızlandırır. Bu, yazılımın daha hızlı bir şekilde teslim edilmesine ve müşteriye sunulmasına olanak tanır.
  7. Düşük Maliyetli Test:

    • Smoke testleri genellikle temel işlevselliği kontrol etmek için tasarlanmış basit testlerdir. Bu nedenle, düşük maliyetli ve hızlı bir şekilde uygulanabilirler.

Smoke testleri, genel sistem sağlığını hızlı bir şekilde değerlendirmek ve temel işlevselliği kontrol etmek için önemli bir araçtır. Bu avantajlar, yazılım geliştirme sürecinde hız, etkinlik ve güvenilirlik sağlamak için kullanılır.

Hangi Testi Kullanmalısınız? 

Hangi test türünün kullanılacağı, yazılımın aşamasına, değişikliklerin büyüklüğüne ve hedeflenen test amacına bağlıdır. Özellikle büyük ve karmaşık projelerde her iki test türünün de kullanılması yaygındır. Smoke test, hızlı bir kontrol ve karar verme aracıdır, bu nedenle yeni yapı sürümlerinde ilk olarak kullanılır. 

 

 Yazar: Melih Can Demirtel