Testler Arasındaki Dengeler
Hassas ve Sağlam Testler Arasındaki Dengeler
Doğru seçimleri yapmak önemlidir, çünkü uygun olmayan veya yetersiz sonuçları karşılaştırırsak test senaryosunun değeri tamamen kaybolmasa bile azalır. Çok fazla bilgiyi karşılaştırırsak, her bir otomatikleştirilmiş test senaryosunu uygulama ve sürdürme maliyeti sağlayabileceği faydaları aşabilir.
Test durumu duyarlılığının sahip olabileceği bir dizi farklı etkiyi vurgular. Diyagram, yalnızca sağlam ve hassas testler arasındaki olası farkları vurgulamayı amaçladığından, tam anlamıyla alınmamalıdır.
Bir test durumu ne kadar hassassa^, test edilen yazılım değiştiğinde güncellemeye ihtiyaç duyması o kadar olasıdır. Bu, test senaryosu için beklenen sonuçları güncellemek gibi basit bir mesele olabilir, ancak bunu bir test senaryosu için yapmakla 100 test senaryosu için yapmak arasında fark vardır (yaklaşık 100 kat daha fazla iş mi?).
Doğal olarak, yapılacak karşılaştırmalar ne kadar fazlaysa, hepsini doğru bir şekilde yazmak o kadar fazla zaman alacaktır. Hem dinamik hem de yürütme sonrası karşılaştırmaların uygulanmasını kolaylaştırmak, uygulama süresini ve yapılan uygulama hatalarının sayısını azaltmaya yardımcı olabilir.
Benzer şekilde, ne kadar çok karşılaştırma olursa, testleri sürdürmek için o kadar çok çalışma gerekecektir. Hassas testler daha fazla efor gerektirir. Pek çok kusur kendiliğinden pes etmez, bu nedenle test sırasında her zaman tetikte olmalı ve beklenmedik durumlara karşı tetikte olmalıyız.
Bunu manuel olarak test ederken yapmak, otomatikleştirilmiş testler uyguladığımızdan daha kolaydır. Sağlam bir test uyguladığımızda, bir kusurun kendini nerede göstereceğini ve göstermeyeceğini etkili bir şekilde varsayıyoruz. Test durumlarımız ne kadar sağlamsa, bir kusurun dikkatimizden kaçma olasılığı o kadar fazladır.
Başarısız bir test senaryosunun sonunda ne kadar çok veri varsa, analiz etmek ve hata ayıklamak o kadar kolay olacaktır. Örneğin, yalnızca yeni bir veritabanı girişinin başarısız olduğunu doğrulamak için kullanılan bir yürütme sonrası karşılaştırmanın olduğunu biliyorsak, neden başarısız olduğunu ancak daha fazla araştırana kadar, muhtemelen test senaryosunu manuel olarak yeniden çalıştırarak tahmin edebiliriz.
Öte yandan, veriler girilirken bir dizi dinamik karşılaştırma yapmış olsaydık, herhangi bir ek araştırma yapmadan bir şeylerin nerede yanlış gittiğini belirleyebilirdik. Sağlam testler, bu nedenle, daha fazla başarısızlık analizi çabasına eğilimlidir.
Depolama alanı pek çok kuruluş için özellikle büyük bir sorun olmasa da yine de önemli bir husus olabilir. Otomatikleştirilmiş testlerimiz için ne kadar çok karşılaştırma belirtirsek, beklenen ve gerçek sonuçlar tarafından o kadar fazla depolama alanı tüketilecektir. Bazen güçlüklere neden olan, tüketilen disk alanı miktarından ziyade benzersiz bir şekilde tanımlanması ve saklanması gereken sonuçların sayısıdır.
Dinamik denge testleri
Statik ve dinamik denge testleri
Evde denge testi
Flamingo denge testi
Kulak denge testi
Y denge testi nasıl yapılır
Y denge testi hesaplama
Dinamik denge testleri FTR
Duyarlılığın olmamasından ziyade çok fazla olması, çok sayıda otomatikleştirilmiş test durumu için başarısızlık analizi çabasını olumsuz etkileyebilir. Bir dizi hassas test durumu çalıştırırsak, birçoğunun aynı nedenden dolayı başarısız olma şansı yüksektir. Bu durumda, başarısız test durumlarının her biri aynı kusuru vurgulamaktadır.
Böyle beklenmedik bir farkın bize söylenmesini isterken, bize bunu anlatan birden fazla test vakasının olmasını istemezdik; kusur başına tek bir test durumu hatası çok iyi sonuç verir.
Tabii ki, bir dizi test durumu çalıştırırsak ve bunlardan birkaçı başarısız olursa, sırayla başarısız olan her bir test durumunu analiz etmeye başlarız. Birkaçına baktıktan sonra burada durup test durumlarını yazılımın onarılmış bir sürümünde yeniden çalıştırmaya karar verebiliriz. Ancak, bize zaten bilmediğimiz hiçbir şey söylemeyen test senaryosu başarısızlıklarını analiz etmek için biraz zaman harcadık.
Test Hassasiyeti İçin Stratejiler
Peki hangisi en iyisi? Testin diğer birçok yönüyle olduğu gibi, bu sorunun da kesinlikle doğru bir yanıtı yoktur. Her iki uç da farklı koşullarda yapılacak doğru şey olabilir. Bu, otomatik bir test tasarlarken verdiğiniz tasarım kararlarından biridir.
Uygulamada, her iki uç noktayı da almamız pek olası değil, ancak ikisinin arasında bir şeyler yapıyoruz. Bununla birlikte, bir test senaryosunun ne derece hassas veya sağlam olduğu önemli bir konudur. Benimseyebileceğiniz veya kendi durumunuza uyarlayabileceğiniz iki olası strateji önerebiliriz.
İlk önerimiz, hassas karşılaştırmayı ağırlıklı olarak, yazılımda bir değişiklik yapıldığında akıl sağlığı kontrolü olarak test senaryolarının çalıştırıldığı yüksek düzeyde kullanmaktır. Üst düzey bir genişlik testi veya yoklama, her test döngüsünün başında çalıştırılan standart bir regresyon testi seti olacaktır.
Fikir şu ki, bu test durumlarının sistemin herhangi bir yerindeki beklenmeyen değişiklikleri algılamasını istiyoruz. Bu test durumları, ne kadar küçük olursa olsun herhangi bir değişikliği yakalayabilmeleri için ağırlıklı olarak hassas olmalıdır.
Sağlam karşılaştırma daha sonra ağırlıklı olarak, her testin test edilen yazılımın belirli bir yönüne odaklandığı daha ayrıntılı seviyelerde kullanılmalıdır. Bu testler, aralarında daha az fark (veya daha fazla örtüşme) olan genellikle çok daha fazla olduğundan, sağlam olmak için daha iyi tasarlanmıştır.
İkinci önerimiz, bir veya iki tanesi hassas karşılaştırma kullanırken diğerleri sağlam karşılaştırma kullanacak şekilde test senaryoları tasarlamayı düşünmektir. Bu durumda, her bir test senaryosu seti, yazılımın farklı bir yönünü araştırır, bu nedenle bir set içinde yazılımın gördüklerinde çok fazla örtüşme vardır.
Bir veya iki test durumu çevresel bilgileri karşılaştırırsa, çevre bilgisindeki beklenmeyen bir fark, set içindeki tüm test durumlarının başarısız olmasına neden olabileceğinden, o küme içindeki diğer test durumlarının bunu tekrar yapmasının çok az anlamı vardır.
İyi bir test otomasyon stratejisi, her bir otomatikleştirilmiş test durumu setinin hedeflerini en etkili ve verimli şekilde gerçekleştirmek için her yönün özelliklerinden (ve aradaki birçok gölgeden) yararlanarak hassas ve sağlam testlerin bir kombinasyonunu planlayacaktır.
Dinamik denge testleri Dinamik denge testleri FTR Evde denge testi Flamingo denge testi Kulak denge testi Statik ve dinamik denge testleri Y denge testi hesaplama Y denge testi nasıl yapılır