Negatif Test Nedir? Örneklerle Test Durumları

Negatif Test

Negatif Test , beklenmedik giriş verileri ve koşulları için yazılım uygulamasını kontrol etmek için kullanılan bir yazılım test türüdür. Beklenmeyen veriler veya koşullar, yanlış veri türünden güçlü bilgisayar korsanlığı saldırılarına kadar her şey olabilir. Negatif testin amacı, yazılım uygulamasının negatif girdiler nedeniyle çökmesini önlemek, kalite ve kararlılığı artırmaktır.

Sadece pozitif test yaparak sistemimizin normal koşullarda çalıştığından emin olabiliriz. % 100 hatasız bir sistem sağlamak için sistemimizin beklenmedik durumlarla başa çıkabileceğinden emin olmalıyız.

Bu eğitimde öğreneceksiniz-

  • Negatif Test Nedir?
  • Negatif Test Örneği
  • Negatif Test Neden Yapılır?
  • Negatif Test nasıl yapılır
  • Negatif Testin Avantajları
  • Negatif Testin Dezavantajları

Negatif Test Örneği

Yaygın olarak kabul edilen bir negatif test örneği olan bir artış durumunu düşünün.

Bir asansörün işlevselliğini hepimiz biliyoruz. Bunlar, kat numarasına basılması gibi asansörün o kata çıkması gibi bir asansörün gereksinimleri olarak değerlendirilecektir.

Asansör belirtilen kata ulaştığında kapı otomatik olarak açılır ve bu böyle devam eder.

Şimdi, artış için bazı olumsuz senaryoları ele alalım. Onlardan bazıları,

Negatif Test Pozitif Test
  • Kişi sayısı (ağırlık) belirtilen sınırı aşarsa ne olur?
  • Asansöre yalnızca belirtilen sayıda kişinin gireceğini varsayar
  • Asansörün içinde birisi sigara içerse veya yangına neden olursa ne olur?
  • Asansörün içinde duman veya ateş olmayacak
  • Çalışma sırasında elektrik kesintisi olursa ne olur?
  • Asansörün çalışması sırasında elektrik kesintisi olmayacaktır.

Tüm bu davalar olumsuz teste tabi tutulacak. Bunun önemi, yukarıda bahsedilenlerin hepsinin olmayacağından emin olamayacağımız için bunların içerilmesine ihtiyacımız var.

Aşırı kilo durumunun kontrol edildiğini ve uygulamada aşırı kilo durumu olduğunda asansörün anormal performans gösterdiğini düşünün. Bu, sistemin güvenilirliği üzerinde potansiyel bir etki yaratacak ve hatta hayati tehlikeye neden olabilir. Bu, negatif testin ne olduğunu ve önemini açıklar.

Aynı durum yazılımda da geçerlidir. Negatif test için normal bir operasyonel prosedürden saptık. Bazı örneklere bakalım.

Örneğin bir kayıt formu düşünün.

Negatif Test Pozitif Test
  • E-posta alanına geçersiz bir e-posta kimliği girmeyi deneyin
  • Bir e-posta alanına yalnızca geçerli e-posta kimlikleri girilecektir
  • Bir telefon numarası alanına (karakter) geçersiz bir telefon numarası girmeyi deneyin
  • Numara alanına tek numara girilecektir
  • Belirtilen sınırların dışında boyutta resim yükleyin
  • Yalnızca belirtilen sınırın altında boyuta sahip resimler yüklenecektir
  • Görüntü yükleme alanına XML, SQL vb. Gibi geçersiz dosyalar yükleyin
  • Yalnızca jpg.webp.png.webp gibi geçerli resim biçimlerini yükleyin.

Daha önce de söylediğimiz gibi, tüm bu olumsuz durumlarda sistemimizin düzgün çalışacağından emin olmalıyız. Birisinin sayı alanına bir karakter girmeye çalışması ve sistemin bir sayı beklediği için beklenmedik verileri işleyememesi ve sonunda sistemin çökmesi durumunu düşünün. Ya da birisi SQL enjeksiyonu yapmaya ve tüm verilerimizi veritabanından silmeye çalışırsa ne olur? Bu tür potansiyel kayıplara katlanamayız. Bu yüzden negatif test önemlidir.

Negatif Test Neden Yapılır?

Test, zaman ve maliyet alıcı bir görev olduğundan, 'neyin', 'nasıl' ve 'ne kadar' test edileceğine karar vermek gerçekten önemlidir. Sistemimizde negatif testler yapıp yapmayacağımızı akıllıca seçmeliyiz. Öyleyse negatif testin önemine bir göz atalım.

Organizasyon perspektifi

Müşterisine kaliteli bir ürün sağlamak kuruluşun sorumluluğundadır. Bunu başarmak için negatif test yapmak gerekir.

Bir başarısızlığa karşı onaylamanın bir parçası olarak, bir kuruluşun olumsuz testler yapması gerekir.

Belki% 100 hatasız bir sistem kuramayız, ancak olumsuz testler yapmamızı sağlamak için bir arızayı önlemek için her şeyi yaptığımızdan emin olmalıyız.

Etki, dikkate almamız gereken faktörlerden biridir. Bir e-ticaret sitesinde pozitif testler yaptığımızı düşünün ve her şeyin yolunda olduğundan emin olun. Ama ya sistemimizde birisinin SQL enjeksiyonu yapabileceği ve tüm verilerimizi silebileceği bir boşluk varsa? Bu büyük bir güvenlik ihlali olacak. Bu tür durumlardan kaçınmak için, kişinin negatif testler yapması da gerekir.

Başta web siteleri olmak üzere halka açık uygulamalar için, uygulamanın kullanım prosedürünü fazla kontrol edemediğimizi her zaman aklımızda tutmalıyız, bu nedenle tüm bu tür durumların kapsandığından ve kapsandığından emin olmak için negatif testler yapmalıyız.

Dikkat etmemiz gereken bir diğer şey de, sistemi yok etmek için bir fırsat arayan çok sayıda siyah hacker olmasıdır. Bilgisayar korsanlığı, olumsuz testlerin kapsadığı önemli bir durumdur

Müşteri perspektifi

Müşteriler, olumsuz testin bir zorunluluk olduğundan emin olmak için her zaman sıfır güvenlik açığı ürünleri beklerler.

E-ticaret, online stok vb. Hassas bir ürün ise güvenlik ve negatif test şarttır.

Olumsuz testlerle ilgili müşteri için tek endişe, maliyettir. Ancak etki analiz edildikten sonra, olumsuz test yapıp yapmamaya karar vermek müşteriye kalmıştır.

Negatif test nasıl yapılır

Negatif test yapmak için tüm olası durumları dikkate almalıyız. Yani, eğer mümkünse, doğru şekilde kullanıp kullanmadığına bakılmaksızın bunu Test Vakasında ele almamız gerekir. Örneğin, bir e-posta alanı görürsek, doğru e-posta biçimi dışında oraya koyabileceğimiz tüm olası girdileri düşünün. Aynı şekilde bir resim yükleme seçeneği gördüğümüzde, onu tüm olası dosyalarla test etmemiz gerekir.

Negatif test senaryoları oluştururken girdilere öncelik vermemiz gerekir, aksi takdirde, pek çok durum mümkün olacaktır. Örneğin, sadece '.png.webp' dosyalarının girilmesi gereken bir görüntü alanı için 'jpeg.webp', 'xml', 'xls' vb. Gibi birçok seçeneğe sahip olabiliriz ... Bu nedenle, aşağıdaki gibi seçeneklere öncelik vermemiz gerekir XML ve SQL, jpeg.webp ve xls'den daha büyük etkiye sahip olabilir, bu nedenle önce SQL ve XML durumlarıyla ilgilenmeliyiz. Bunun gibi, zamandan ve test maliyetinden tasarruf etmek için yürütmeden önce vakalara öncelik vermeliyiz.

Negatif testin artıları ve eksileri

Diğer tüm test teknikleri gibi, negatif testlerin artıları ve eksileri temel olarak 'nerede', 'ne zaman' ve 'nasıl' kullanılacağına bağlıdır. Şuna bir bakalım.

Negatif Testin Avantajları

  • Hepimizin bildiği gibi negatif test, bir ürünün kalitesini sağlamak için çok önemlidir. Kaliteli bir ürün, olumsuz testin çok önemli olmasını sağlamak için sıfır güvenlik açığı ürünüdür.
  • Negatif test yapmak, tüm olası durumların kapsanmasını sağlar. Kasıtlı veya kasıtsız olarak olumsuz test durumlarının ortaya çıkma ihtimali vardır. Bu nedenle, tüm vakaların kapsandığından emin olmak için pozitif test ile birlikte negatif testler yapmalıyız.
  • Negatif testler, canlıya geçmeden önce müşteriye daha fazla güven verecektir.

Negatif Testin Dezavantajları

  • Yazılım Mühendisliğinde Negatif testler bazı durumlarda zaman ve enerji israfına dönüşür. Çoğu durumda, aşırı negatif teste gerek yoktur. Örneğin, tek kişinin kullanımı için bir uygulama oluşturulmuşsa, sistemi bir seferde 100 kullanıcının kullandığı durumu dikkate almamıza gerek yoktur. Bu nedenle, olumsuz test durumlarında koşullara karar vermek çok önemlidir. Belirli bir sistem üzerinde negatif testler yapmak zorunda olmadığımız zamanlar olacaktır.
  • Yetenekli ve deneyimli kişilerin olumsuz test senaryoları oluşturmasını isteyin.
  • Müşteri için negatif test, sürümde ve maliyet toplayıcıda gereksiz gecikmeye neden olan başka bir şeydir.
  • Bir takımın negatif testlere daha fazla zaman ve enerji harcama şansı. Test uzmanlarının negatif testte çok fazla zaman ve enerji harcama şansı vardır, bu da pozitif testte daha düşük bir konsantrasyona neden olur.

Ilginç makaleler...