Örneklerle Pozitif Test ve Negatif Test
⚡ Akıllı Özet
Pozitif ve negatif testler birlikte, yazılımın kabul etmesi gerekenleri kabul edip etmediğini ve reddetmemesi gerekenleri reddedip reddetmediğini belirler. Bu makale, her iki yaklaşımı, arkalarındaki teknikleri, pratik örnekleri ve hata sızıntısını düşük tutan uygulamaları açıklamaktadır.
Yazılım testi, bir yazılım uygulamasının beklendiği gibi çalışıp çalışmadığını kontrol etmek için yapılan doğrulama ve geçerlilik kontrolü işlemidir. Amaç, hataları bulmak ve ürün kalitesini iyileştirmektir. Yazılım testinin iki yolu vardır: Pozitif Test ve Negatif Test.
İki yaklaşım da birbirine zıt sorulara cevap veriyor: Her şey yolunda gittiğinde uygulama çalışıyor mu ve bir sorun çıktığında istikrarlı kalıyor mu?
Pozitif test sonucu nedir?
Pozitif Test Geçerli veri kümeleri girdi olarak verilerek bir yazılım uygulaması üzerinde gerçekleştirilen bir test türüdür. Yazılım uygulamasının olumlu girdilerle beklendiği gibi davranıp davranmadığını kontrol eder.
Pozitif test, yazılım uygulamasının tam olarak beklendiği gibi çalışıp çalışmadığını kontrol etmek amacıyla yapılır. Bu nedenle, buna "mutlu yol testi" de denir.
Örneğin, aşağıda gösterilen sayısal metin kutusunu ele alalım.
Bir uygulamada yalnızca sayıları kabul edebilen bir metin kutusu vardır. 99999'a kadar olan değerleri girmek sistem tarafından kabul edilebilir olacaktır ve bunun dışındaki diğer değerler kabul edilmemelidir. Olumlu test yapmak için geçerli giriş değerlerini 0 ile 99999 arasında ayarlayın ve sistemin değerleri kabul edip etmediğini kontrol edin.
Negatif Test Nedir?
Negatif Test Bu, geçersiz veya uygunsuz veri kümeleri girdi olarak verilerek yazılım uygulaması üzerinde gerçekleştirilen bir test yöntemidir. Yazılım uygulamasının olumsuz veya istenmeyen kullanıcı girdileriyle beklendiği gibi davranıp davranmadığını kontrol eder.
Negatif testin amacı, yazılım uygulamasının geçersiz veri girişleriyle bile çökmemesini ve kararlı kalmasını sağlamaktır. Bu nedenle hata yolu testi veya arıza testi olarak da adlandırılır.
Örneğin, aynı alanın rakamlar yerine karakterler almasını ele alalım.
Negatif test, A'dan Z'ye veya a'dan z'ye karakterler girilerek gerçekleştirilebilir. Ya yazılım sistemi bu değerleri kabul etmemeli ya da bu geçersiz veri girişlerinde hata mesajı vermelidir.
Her iki test türünde de aşağıdaki hususlar dikkate alınmalıdır:
- Veri girişi
- Gerçekleştirilmesi gereken bir eylem
- Çıkış Sonucu
Pozitif Test ve Negatif Test Arasındaki Temel Farklar
Her iki yaklaşım da aynı ortak noktayı paylaşıyor. test durumu Yapı. Fark, sağladığınız girdide ve başarılı bir sonucun neyi kanıtladığında yatmaktadır.
| Parametre | Pozitif Test | Negatif Test |
|---|---|---|
| Ayrıca olarak bilinir | Mutlu yol testi | Hata yolu veya arıza testi |
| Kullanılan giriş | Geçerli, beklenen veriler | Geçersiz, aşırı veya beklenmedik veriler |
| Gol | Özelliğin beklendiği gibi çalıştığını doğrulayın. | Özelliğin reddetmemesi gereken şeyleri reddettiğini doğrulayın. |
| Beklenen sonuç | İşlem başarıyla tamamlandı. | Açık bir hata beliriyor ve sistem stabil kalıyor. |
| Hata işleme | Odak noktası değil | Tüm odak noktası |
| Kapsam | Dar, belirtilen özelliklere uygun | Geniş kapsamlı, teknik şartnamenin dışında kalan her şeyi araştırıyor. |
| Atlanması durumunda tipik risk | Temel özellikler arızalı olarak gönderiliyor. | Çökmeler ve güvenlik açıkları üretim aşamasına kadar ulaşıyor. |
Pozitif testin başarısız olması, işlev bozukluğuna işaret eder. Negatif testin başarısız olması ise, eksik bir koruma parçasına işaret eder ki bu, kullanıcılar tarafından fark edildikten sonra onarımı çok daha pahalıya mal olur.
Pozitif ve Negatif Testlerde Kullanılan Test Teknikleri
Pratikte, iki klasik girdi tasarımı tekniği aynı gereksinimden hem olumlu hem de olumsuz durumlar üretir:
- Sınır Değer Analizi
- Eşit bölümlere ayırma
Sınır Değer Analizi
Bu, test senaryolarının sınırdaki değerleri içerecek şekilde tasarlandığı yazılım test tekniklerinden biridir. Giriş verileri sınır değer sınırları dahilinde kullanılıyorsa buna Pozitif Test denir. Giriş verileri sınır değer limitlerinin dışında seçilirse buna Negatif Test denir.
Örneğin, aşağıda gösterilen kabul edilebilir aralığa bakın.
Bir sistem 0'dan 10'a kadar sayısal değerleri kabul edebilir. Diğer tüm sayılar geçersiz değerlerdir. Bu teknik kapsamında -1,0,1 ve 9,10,11 sınır değerleri test edilecektir.
Eşit bölümlere ayırma
Bu bir yazılım testi Giriş verilerini birçok bölüme ayıran teknik. Her bölümdeki değerler en az bir kez test edilmelidir. Pozitif Test için geçerli değerlere sahip bölümler kullanılır. Geçersiz değerlere sahip bölümler negatif test için kullanılırken.
Örneğin, aşağıda gösterilen iki bölümü inceleyin.
Sıfırdan ona kadar olan sayısal değerler iki (veya üç) bölüme ayrılabilir. Bizim durumumuzda, -10 ile -1 ve 0 ile 10 olmak üzere iki bölümümüz var. Senaryoları test etmek için her bölümden örnek değerler (5 ve -5) alınabilir. Bkz. eşdeğerlik bölümlendirmesi ve sınır değer analizi Daha fazla çözümlü örnek için derse bakın.
Pozitif ve Negatif Testler Nasıl Yapılır?
Aşağıdaki sıralama, bir gereksinimi dengeli bir pozitif ve negatif durumlar kümesine dönüştürür.
- Sınırlama şartlarını okuyun. Kabul edilen her formatı, aralığı ve zorunlu alanı not edin. Spesifikasyonun izin verdiği her şey olumlu, dışladığı her şey ise olumsuz bir durum olarak değerlendirilir.
- Önce olumlu durumu yazın. Geçerli verileri girin, işlemi gerçekleştirin ve beklenen başarı sonucunu temel değer olarak kaydedin.
- Aynı limitlerden negatif durumları türetin. Sınır değer analizi ve eşdeğerlik bölümleme yöntemlerini kullanarak boş alanlar, yanlış veri tipleri ve aralık dışı sayılar üretin.
- Düşmanca girdi ekleyin. Dahil SQL enjeksiyonu dizeler, süresi dolmuş belirteçler ve hatalı biçimlendirilmiş API yükleri gibi güvenlik testi Boşluklar erken ortaya çıkıyor.
- İşlevsel olmayan kontrolleri de kapsayacak şekilde genişletin. A yük testi desteklenen kullanıcı sayısı pozitif olduğunda, stres testi Bu sınırın ötesinde ise karşılık gelen negatif durum yer almaktadır.
- Her bir vakanın nerede çalışacağını seçin. Olumsuz vakaları dışarıda tutun. duman ve akıl sağlığı testiBunlar hızlı pozitif kapılardır ve bunları fonksiyonel olarak çalıştırırlar. gerileme testi çevrimleri.
ATM'den para çekme işlemi eşleştirmeyi gösterir. Olumlu durumda, doğru PIN ve geçerli bir miktar girilir, bu nedenle nakit ve fiş gelir. Olumsuz durumda ise yanlış PIN girilir ve ret mesajı, ardından da kartın bloke edilmesi beklenir.
Dengeyi Korumak İçin En İyi Uygulamalar
- Geliştirmeye başlamadan önce, her gereksinim için en az iki durum senaryosu yazın; biri olumlu, diğeri olumsuz.
- Olumsuz vakaları etki sırasına göre önceliklendirin; bu nedenle enjeksiyon ve ödeme hataları, kozmetik girdi hatalarından önce gelir.
- Sadece işlemin başarısız olduğunu belirtmekle kalmayın, hata mesajının kendisini de doğrulayın; çünkü belirsiz mesajlar da birer kusurdur.
- Yer bırakın keşifsel testve bulgularınızı şu şekilde kaydedin: kusur yönetimi süreci.
⚠️Uyarı: Canlı üretim ortamında asla olumsuz senaryolar çalıştırmayın. Bunlar, arızaları zorlamak için vardır ve kasıtlı bir çökme gerçek kullanıcıları ve gerçek verileri etkiler.


.png)
.png)
.png)
.png)