Veriye Dayalı Test Nedir?
⚡ Akıllı Özet
Veri Odaklı Test, test verilerini tablolarda veya elektronik tablolarda depolayan ve böylece tek bir komut dosyasının birçok girdi kombinasyonunu doğrulayabileceği bir yazılım test yöntemidir. Test mantığını verilerden ayırarak komut dosyası tekrarını ve bakım çabasını azaltır.
Veriye Dayalı Test
Veriye Dayalı Test test verilerinin tablo veya elektronik tablo formatında saklandığı bir yazılım test yöntemidir. Veriye dayalı test, test uzmanlarının bir tablodaki tüm test verileri için testleri yürütebilen ve test çıktısını aynı tabloda bekleyebilen tek bir test komut dosyası girmesine olanak tanır. Aynı zamanda tabloya dayalı test veya parametreli test olarak da adlandırılır.
Veri Odaklı Çerçeve
Veri Odaklı Çerçeve Veri odaklı test çerçevesi, girdi değerlerinin veri dosyalarından okunup test senaryolarındaki değişkenlere kaydedildiği bir otomasyon test çerçevesidir. Test uzmanlarının hem olumlu hem de olumsuz test senaryolarını tek bir testte birleştirmelerini sağlar. Veri odaklı çerçevede girdi verileri, .xls, .xml, .csv ve veritabanları gibi tek veya birden fazla veri kaynağında saklanabilir. Aşağıdaki diyagram, girdi değerlerinin veri dosyasından test senaryosuna nasıl aktığını göstermektedir.
Neden Veriye Dayalı Test?
Veriye Dayalı Test Bu önemlidir çünkü test uzmanları genellikle tek bir test için birden fazla veri setine sahiptir ve her veri seti için ayrı testler oluşturmak zaman alıcı olabilir. Veri odaklı test, verileri test komut dosyalarından ayrı tutmaya yardımcı olur ve aynı test komut dosyaları, farklı girdi test verisi kombinasyonları için çalıştırılabilirken test sonuçları verimli bir şekilde oluşturulabilir.
Örnek:
Çoklu giriş alanına sahip oturum açma sistemini 1000 farklı veri kümesine karşı test etmek istediğimizi varsayalım.
Bunu test etmek için aşağıdaki farklı yaklaşımları deneyebilirsiniz:
Yaklaşım 1) Her veri seti için bir tane olmak üzere 1000 adet komut dosyası oluşturun ve her testi tek tek ayrı ayrı çalıştırın.
Yaklaşım 2) Test komut dosyasındaki değeri manuel olarak değiştirin ve birkaç kez çalıştırın.
Yaklaşım 3) Excel dosyasından verileri içe aktarın. Excel satırlarından test verilerini tek tek alın ve komut dosyasını çalıştırın.
Verilen üç senaryodan ilk ikisi zahmetli ve zaman alıcıdır. Bu nedenle, üçüncü yaklaşımı izlemek idealdir.
Dolayısıyla üçüncü yaklaşım, Veriye Dayalı bir çerçeveden başka bir şey değildir.
Veri Odaklı Testlerde Kullanılan Test Veri Türleri
Veriye dayalı testlerin değeri, test komut dosyalarınıza beslediğiniz veri kümelerinin kalitesine doğrudan bağlıdır. İyi tasarlanmış bir veri dosyası, tek bir komut dosyasının normal davranışı, hata işlemeyi ve sınırları tek bir çalıştırmada doğrulayabilmesi için çeşitli test verisi kategorilerini bir araya getirir:
- Olumlu (geçerli) veriler: Geçerli bir kullanıcı adı ve parola gibi doğru girdiler, uygulamanın kabul etmesi gerekenleri kabul ettiğini doğrulamak için kullanılır.
- Olumsuz (geçersiz) veri: Yanlış veya hatalı girilen veriler, örneğin yanlış parola veya sayısal alanda özel karakterler gibi, reddedilmelidir.
- Sınır verileri: Tek karakterli veya 255 karakterli kullanıcı adı gibi, izin verilen aralıkların uç noktalarındaki değerler, sıklıkla gizli kusurları ortaya çıkarır.
- Boş veya geçersiz veri: Zorunlu alan doğrulamasını ve hata mesajlarını kontrol eden boş alanlar.
- Büyük hacimli veriler: Gerçekçi yük altında performans ve kararlılığı kontrol etmek için toplu veya rastgele oluşturulmuş kayıtlar kullanılır.
Gerekli veriler hazırlandıktan sonraki adım, çerçeveyi oluşturmaktır.
Veriye Dayalı Otomasyon Çerçevesi nasıl oluşturulur?
Bir uygulamanın giriş işlevini test etmek istediğinizi düşünün. Yukarıdaki akış şeması, tüm döngüyü göstermektedir: test senaryolarını belirleme, ortak test betiğini yazma, verileri harici bir dosyaya taşıma ve betiği her veri satırı üzerinde tekrarlama.
) 1 Adım Test Durumlarını Tanımlayın
- Doğru kullanıcı adını ve şifreyi girin – Giriş Başarılı
- Yanlış kullanıcı adı ve doğru şifreyi girin – Oturum Açma Hatası
- Doğru kullanıcı adını ve yanlış şifreyi girin – Oturum Açma Hatası
) 2 Adım Yukarıdaki 3 Test Senaryosu için ayrıntılı test Adımları oluşturun
| Test durumu# | Açıklama | Test Adımları | Test verisi | Beklenen sonuçlar |
|---|---|---|---|---|
| 1 | Geçerli kimlik bilgileri için Oturum Açmayı kontrol edin |
|
Kullanıcı adı: geçerli şifre: geçerli | Giriş başarılı |
| 2 | Geçersiz kimlik bilgileri için Oturum Açmayı kontrol edin |
|
Kullanıcı adı: geçersiz şifre: geçerli | Giriş hatası |
| 3 | Geçersiz kimlik bilgileri için Oturum Açmayı kontrol edin |
|
Kullanıcı adı: geçerli şifre: geçersiz | Giriş hatası |
) 3 Adım Test Komut Dosyası Oluşturun
Dikkat ederseniz, test adımları her üç test senaryosunda da ortaktır. Bu adımları yürütmek için bir test betiği oluşturmanız gerekiyor:
// This is Pseudo Code
// Test Step 1: Launch Application
driver.get("URL of the Application");
// Test Step 2: Enter Username
txtbox_username.sendKeys("valid");
// Test Step 3: Enter Password
txtbox_password.sendKeys("invalid");
// Test Step 4: Check Results
If (Next Screen) print success else Fail
) 4 Adım Aşağıdaki örnek sayfada gösterildiği gibi, test verilerini girerek bir Excel/CSV dosyası oluşturun.
) 5 Adım Test verileri üzerinde döngü oluşturacak şekilde betiği değiştirin. Giriş komutları da parametrelendirilmelidir.
// This is Pseudo Code
// Loop 3 Times
for (i = 0; i & lt; = 3; i++) {
// Read data from Excel and store into variables
int input_1 = ReadExcel(i, 0);
int input_2 = ReadExcel(i, 1);
// Test Step 1: Launch Application
driver.get("URL of the Application");
// Test Step 2: Enter Username
txtbox_username.sendKeys(input_1);
// Test Step 3: Enter Password
txtbox_password.sendKeys(input_2);
// Test Step 4: Check Results
If(Next Screen) print success
else Fail
}
Yukarıda sadece 3 test vakası var. Test betiği, test verisi değerlerini ekleyerek aşağıdaki test vakaları üzerinde döngü oluşturmak için kullanılabilir Excel
- Yanlış kullanıcı adı ve yanlış şifre girin – Giriş Başarısız
- Doğru kullanıcı adını ve şifreyi boş girin – Giriş Başarısız
- Boş kullanıcı adı ve boş şifre girin – Giriş Başarısız
Ve benzeri
💡 Profesyonel İpucu: Her satır için beklenen sonucu, girdilerle aynı veri dosyasına kaydedin. Ardından, komut dosyanız gerçek ve beklenen sonuçları otomatik olarak karşılaştırarak veri dosyasını eksiksiz, kendi kendini doğrulayan bir test paketine dönüştürebilir.
Çerçeve yapınız hazır olduğunda, doğru araç veri yönetimini, uygulamayı ve raporlamayı kolaylaştırır.
En İyi Veri Odaklı Test Aracı
1) Test sigması
Test sigması Bulut tabanlı, veri odaklı bir test platformu olan bu araç, test mantığını test verilerinden ayırarak test kapsamını en üst düzeye çıkarmak için paha biçilmez bir değer taşıyor. Özellikle, gereksiz test komut dosyaları oluşturmadan çeşitli veri kümelerine, uç durumlara ve iş senaryolarına karşı uygulamaları doğrulaması gereken ekipler için tasarlanmıştır ve tüm veri odaklı test iş akışını kolaylaştırır.
Veri odaklı test projelerim sırasında, Excel ve CSV dosyaları gibi harici kaynaklardan gelen birden fazla veri kombinasyonuna karşı aynı test senaryolarını çalıştırmak için Testsigma'nın parametreleştirme yeteneklerinden yararlandım. Platformun veri satırları arasında otomatik olarak yineleme yapabilme özelliği, test kapsamımı önemli ölçüde genişletirken, veri düzeyindeki sonuçlara ilişkin ayrıntılı raporlama, web, mobil ve API katmanlarında hangi belirli girdi kombinasyonlarının hatalara neden olduğunu hızlı bir şekilde belirlememe yardımcı oldu.
Özellikler:
- Harici Veri Kaynağı Entegrasyonu: Bu özellik, merkezi test verisi yönetimi için Excel elektronik tablolarına, CSV dosyalarına ve veritabanı tablolarına doğrudan bağlantı sağlar. Sabit kodlanmış değerleri ortadan kaldırır ve test verilerini test mantığından bağımsız olarak yönetmenize olanak tanır. Test komut dosyalarını değiştirmeden veri kümelerini güncelleyebilir, esneklik ve sürdürülebilirlik sağlayabilirsiniz. Ben bunu, yüzlerce veri varyasyonunu verimli bir şekilde yönetmek ve aynı zamanda...ping Test senaryoları temiz ve yeniden kullanılabilir.
- Otomatik Çok Satırlı Veri Yinelemesi: Testsigma, tek bir test çalıştırmasında birden fazla veri satırında test senaryolarını otomatik olarak yürüterek kapsamı önemli ölçüde genişletir. Test senaryolarını çoğaltmadan çok sayıda girdi kombinasyonunu, sınır koşulunu ve iş kuralı varyasyonunu doğrulayabilirsiniz. Bu özellik, veri sıralamasını ve yineleme mantığını şeffaf bir şekilde ele alır. Bunu, minimum komut dosyası bakım yüküyle kapsamlı regresyon testleri için özellikle etkili buldum.
- Dinamik Test Adımı Parametrelendirmesi: Bu özellik, statik değerleri, yürütme sırasında harici kaynaklardan veri çeken dinamik parametrelerle değiştirmenize olanak tanır. Veri kümesi değerlerine bağlı olarak değişen girdilere, koşullara ve beklenen sonuçlara uyum sağlamak için test adımlarını yapılandırabilirsiniz. Bu özellik, karmaşık veri dönüşümlerini ve koşullu mantığı destekler. Çeşitli iş gereksinimlerini ve kullanıcı iş akışlarını karşılayan esnek test senaryoları oluşturmak için bu özelliğe güveniyorum.
- Veri Düzeyinde Yürütme Raporlaması: Platform, test sonuçlarını her bir veri kombinasyonuna göre ayrıntılı olarak gösteren raporlar oluşturarak hangi girdilerin başarılı veya başarısız olduğunu tam olarak ortaya koyar. Desenleri analiz edebilir, sorunlu veri aralıklarını belirleyebilir ve tracBu özellik, belirli veri kümesi satırlarındaki hataları gösterir ve paydaşlarla iletişim için görsel panolar ve dışa aktarılabilir analizler sunar. Bu bilgilerden yararlanarak veri kalitesi iyileştirmelerine öncelik vermenizi ve test verisi stratejilerinizi geliştirmenizi öneririm.
- Çapraz Platform Veri Odaklı Destek: Testsigma, birleşik iş akışları içinde web, mobil ve API testlerinde veri odaklı yetenekleri genişletir. Farklı uygulama katmanları ve teknolojiler arasında tutarlılığı doğrulamak için aynı veri kümelerini kullanabilirsiniz. Bu özellik, parametreli veri akışlarıyla kapsamlı uçtan uca doğrulama sağlar. Ben bunu, arka uç veri işlemenin ön uç arayüzlerine aynı anda birden fazla platformda doğru şekilde yansıdığını doğrulamak için kullandım.
Artılar
Eksiler
Fiyatlandırma:
- Fiyat: Kapsamlı abonelik planının bir parçası olarak veri odaklı test yetenekleri içeren özel fiyatlandırma sunulmaktadır.
- Ücretsiz deneme: 14 Gün Ücretsiz Deneme
14 Gün Ücretsiz Deneme
2) Testiny
Testiny Veriye dayalı test senaryolarını verimli bir şekilde düzenlemek için kullandığım modern, bulut tabanlı bir test senaryosu yönetim platformudur.ping Test mantığı ve parametreli veri kümeleri arasında net bir ayrım sağlar. Çeşitli veri kombinasyonlarını birçok test çalıştırmasında kaybetmeden yönetmesi gereken ekipler için tasarlanmıştır. tracyetenek.
Veri odaklı projeler yürütürken TestinyToplu düzenleme ve şablon özelliklerinin, yüzlerce veri satırında test varyasyonlarını ölçeklendirmeyi kolaylaştırmasını takdir ettim. Platform, Jira, GitHub ve GitLab ile entegre olduğundan, başarısız veri kombinasyonları soruna geri bağlanıyor. trackers otomatik olarak.
Özellikler:
- Toplu Test Durumu Düzenleme: Testiny Bu özellik, birçok test senaryosunu aynı anda düzenlemenize, çoğaltmanıza ve parametreleştirmenize olanak tanıyarak veri odaklı varyasyonlar oluşturmayı hızlandırır. Her bir senaryoya tek tek dokunmadan, değişiklikleri saniyeler içinde klasörler arasında uygulayabilirsiniz. Ben, komut dosyalarını yeniden yazmadan yeni veri kümelerine kapsamı genişletirken bu özelliğe güveniyorum.
- Veri Girişleri için Özel Alanlar: Bu özellik, her proje için özel alanlar tanımlamanıza olanak tanır, böylece veri kümesi öznitelikleri şu şekilde olabilir: tracHer test çalışmasının yanında kaydedilir. Giriş değerlerini, beklenen sonuçları ve koşulları tek bir yerde net bir şekilde kaydedebilirsiniz. Bu alanları, karmaşık parametreli senaryoların daha sonra denetlenmesini kolaylaştırmak için kullanıyorum.
- Gerçek Zamanlı Test Çalıştırması Tracking: Platform, ekip üyeleri arasında canlı yürütme durumunu göstererek veri odaklı test çalışmalarının şeffaf kalmasını sağlar. Test senaryoları atayabilir, geçme/kalma yüzdelerini izleyebilir ve engellenen veri kombinasyonlarını anında belirleyebilirsiniz. Bunu özellikle veri yönetimi açısından faydalı buluyorum.ping Kalite güvence yöneticileri, sürekli durum toplantılarına gerek kalmadan bilgilendiriliyor.
- PDF ve Paylaşılabilir Raporlama: Testiny Teknik bilgisi olmayan paydaşlarla paylaşabileceğiniz grafikler ve uygulama özetleri içeren temiz PDF raporları oluşturur. Veri kümesine, kilometre taşına veya sürüme göre filtreleme yapabilirsiniz. Kalite durumunu iletmek için bunları her sprintin sonunda gönderiyorum.
- Yerel Sorun TracKer Entegrasyonları: Jira, GitHub, GitLab ile bağlantı kurar. Azure DevOps, Doğrusal, AsanaConfluence, Trello ve monday.com gibi araçlar sayesinde başarısız veri satırları hızla biletlere dönüşüyor. Test yürütme ve mühendislik iş akışlarını uyumlu tutabilirsiniz. Bunun, QA ve geliştirme ekipleri arasındaki geçiş sürecindeki sürtüşmeyi önemli ölçüde azalttığını fark ettim.
Artılar
Eksiler
Fiyatlandırma:
- Fiyat: 3 kullanıcıya kadar ücretsiz plan; ücretli planlar kullanıcı sayısına göre artar ve premium destek ekler.
- Ücretsiz deneme: 21 Gün Ücretsiz Deneme
21 Gün Ücretsiz Deneme
3) Testpad
Testpad Veri odaklı senaryoların hızlı ve zahmetsiz bir şekilde yakalanması gerektiğinde kullandığım, hafif, kontrol listesi tabanlı bir test yönetim aracıdır. Hiyerarşik kontrol listeleri etrafında inşa edilmiştir, böylece test uzmanları veri varyasyonlarını ana durumlar altında gruplandırabilir ve hızla uygulayabilirler.
Veri odaklı oturumlarım sırasında TestpadKlavye öncelikli arayüzünü kullanarak tek seferde düzinelerce giriş varyasyonu oluşturdum. Konuk test kullanıcısı desteği, ek lisans ücreti ödemeden uç durum veri kombinasyonlarını doğrulamak için alan uzmanlarını getirmeme olanak sağladı.
Özellikler:
- Hiyerarşik Test Kontrol Listeleri: Testpad Parametreli testleri iç içe geçmiş kontrol listelerinde düzenleyerek, ilgili veri varyasyonlarını tek bir ana durum altında gruplandırmanıza olanak tanır. Belirli veri kümelerine odaklanmak için dalları genişletebilir ve daraltabilirsiniz. Bunu, karmaşık veri matrislerini görsel olarak düzenli tutmak için kullanıyorum.
- Klavyeyle Düzenleme: Klavye kısayollarıyla test öğeleri oluşturmanıza, girintilemenize ve yeniden sıralamanıza olanak tanıyarak büyük veri odaklı planlar oluşturmayı hızlandırır. Fareye uzanmadan iş akışında kalabilirsiniz. Bunun, yeni veri kümesi satırlarını yakalama süresini önemli ölçüde azalttığını düşünüyorum.
- Konuk Test Kullanıcısı Erişimi: Testpad Sınırsız sayıda misafir test kullanıcısını, koltuk başına ücret ödemeden destekler; böylece belirli veri kombinasyonları için alan uzmanlarını davet edebilirsiniz. Paydaşları, lisanslama yükü olmadan uç durumları doğrulamaya davet edebilirsiniz. Parametreli senaryolarla kullanıcı kabulü sırasında buna güveniyorum.
- Anında Paylaşılabilir Raporlar: Platform, bağlantı yoluyla paylaşabileceğiniz hafif raporlar oluşturarak, aracı açmadan ilerlemeyi görmenizi sağlar. Test uzmanına, duruma veya test dalına göre filtreleme yapabilirsiniz. Bu raporları, veri odaklı her test çalışmasının sonunda ürün yöneticilerine gönderiyorum.
- Konu Tracker Bağlantısı: Başarısız testleri basit bağlantılar aracılığıyla Jira veya GitHub biletlerine bağlayarak veri satırı hatalarının mühendislik ekibine hızlı bir şekilde yönlendirilmesini sağlar. Başarısız bir kontrol listesi öğesinden doğrudan bağlam ekleyebilirsiniz. Test uzmanlarının odağını yürütmeye yönlendirirken, yönlendirmeyi araçlara bırakıyorum.
Artılar
Eksiler
Fiyatlandırma:
- Fiyat: Planlar aylık 59 dolardan başlıyor, daha büyük ekipler için özel kurumsal planlar da mevcut.
- Ücretsiz deneme: 30-Day Ücretsiz Deneme
30 Gün Ücretsiz Deneme
Veriye Dayalı testin en iyi uygulamaları
Aşağıda veri odaklı testler için en iyi test uygulamaları verilmiştir:
- Veriye dayalı test sürecinde gerçekçi bilgilerin kullanılması idealdir
- Test akışında gezinme, test komut dosyasının içinde kodlanmalıdır
- Anlamlı verilerle sanal API'leri destekleyin
- Dinamik İddiaları Desteklemek için Verileri Kullanın
- Olumlu ve olumsuz sonuçları test edin
- Güvenlik ve Performans için Veriye Dayalı İşlevsel Testleri Yeniden Amaçlayın
Veriye Dayalı testin avantajları
Veriye dayalı testler birçok avantaj sunar. Bunlardan bazıları şunlardır:
- Uygulamanın birden fazla veri değeri kümesiyle test edilmesine olanak tanır. Gerileme testi
- Test verileri ve doğrulama verileri yalnızca tek bir dosyada düzenlenebilir ve test senaryosu mantığından ayrıdır.
- Bu araç sayesinde test senaryolarını tek bir depoda tutmak mümkün. Bu da testlerin anlaşılmasını, bakımını ve yönetimini kolaylaştırıyor.
- Eylemler ve İşlevler farklı testlerde yeniden kullanılabilir.
- Bazı araçlar test verilerini otomatik olarak oluşturur. Bu, büyük miktarda rastgele test verisine ihtiyaç duyulduğunda zaman tasarrufu sağladığı için faydalıdır.
- Veri odaklı testler, geliştirmenin herhangi bir aşamasında gerçekleştirilebilir. Veri odaklı test senaryoları genellikle tek bir süreçte birleştirilir. Bununla birlikte, birden fazla test senaryosunda da kullanılabilirler.
- Geliştiricilerin ve test uzmanlarının, test senaryolarının/komut dosyalarının mantığını test verilerinden net bir şekilde ayırmasına olanak tanır.
- Aynı test senaryoları birden fazla kez çalıştırılabilir, bu da test senaryosu ve komut dosyası sayısını azaltmaya yardımcı olur.
- Test senaryosunda yapılan herhangi bir değişiklik test verilerini etkilemez.
Veriye Dayalı testin dezavantajları
Veriye Dayalı Otomasyon Test yönteminin bazı dezavantajları şunlardır:
- Testin kalitesi, uygulayıcı ekibin otomasyon becerilerine bağlıdır.
- Büyük miktarda veriyi test ederken veri doğrulama zaman alan bir işlemdir.
- Veri odaklı testler için büyük miktarda kodlama gerektiğinden, bakım büyük bir sorun teşkil etmektedir.
- Üst düzey teknik beceriler gereklidir. Bir test uzmanının tamamen yeni bir kodlama dili öğrenmesi gerekebilir.
- Çoğunlukla komut dosyası yönetimi, test altyapısı ve test sonuçlarıyla ilgili olmak üzere daha fazla dokümantasyon eklenecektir.
- Veri dosyalarını oluşturmak ve sürdürmek için Not Defteri gibi bir metin düzenleyicisine ihtiyaç vardır.
Veri Odaklı Test ve Anahtar Kelime Odaklı Test Karşılaştırması
Yeni başlayanlar genellikle veri odaklı test ile anahtar kelime odaklı testi karıştırırlar çünkü her ikisi de test tasarımını test senaryolarından ayırır. Aradaki fark, dışa aktarılan şeydedir: veri odaklı test girdi değerlerini dışa aktarırken, anahtar kelime odaklı test eylemlerin kendilerini yeniden kullanılabilir anahtar kelimeler olarak dışa aktarır. Aşağıdaki tablo iki yaklaşımı karşılaştırmaktadır:
| Parametre | Veriye Dayalı Test | Anahtar Kelime Odaklı Test |
|---|---|---|
| Dışsallaştırılan nedir? | Test verileri (girdiler ve beklenen sonuçlar) | Test eylemleri (Giriş yap, Tıkla, Doğrula gibi anahtar kelimeler) |
| Veri kaynağı | Excel, CSV, XML veya veritabanı tabloları | Anahtar kelime tabloları ve isteğe bağlı veri tabloları |
| Yetenek gerekli | Orta düzeyde kodlama bilgisi | Daha yüksek başlangıç tasarım çabası; yeni testler oluşturmak için daha az kodlama. |
| En uygun | Bir senaryoyu birçok girdi kombinasyonuyla tekrarlamak | Yeniden kullanılabilir eylem bloklarından birçok senaryo oluşturmak |
| Bakım | Komut dosyalarına dokunmadan veri dosyalarını güncelleyin. | Uygulama davranışı değiştiğinde anahtar kelime kitaplığını güncelleyin. |
Birçok ekip, her iki yaklaşımı da hibrit bir çerçevede birleştirir; burada anahtar kelimeler yeniden kullanılabilir eylemleri tanımlar ve harici veri dosyaları her test çalıştırması için değerleri sağlar.







