database crud testing through ui with sample test cases
CRUD İşlemleri Nedir ve UI Üzerinden CRUD Testi Nasıl Gerçekleştirilir:
İnsanlar, birkaç on yıldan önce bile bilgi depolamaya başladı! Ve o günlerde, tüm verilerin bir dosyada depolandığı hesaplama geçmişinde Düz dosya veritabanları kullanılıyordu.
Daha sonra, 1970’lerin başında IBM, verileri kolayca almak için 'dizinleri' sunan ilk İlişkisel Veritabanı Modelini geliştirdi.
Ne öğreneceksin:
- CRUD İşlemlerine Genel Bakış
- Veritabanı Testi Neden Önemlidir?
- 4 Temel Veritabanı İşlevselliği
- CRUD'nin tanımı
- CRUD Testi
- Bir Yazılımın CRUD İşlevselliği Nasıl Test Edilir?
- Sonuç
- Önerilen Kaynaklar
CRUD İşlemlerine Genel Bakış
Şu anda en yaygın veri depolama sistemi, Veri tabanı Yazılımın Sorgular aracılığıyla verileri oluşturduğu, okuduğu, güncellediği ve sildiği yer. Bilgisayar Yazılımları, doğru tasarlanmış veri tabanı ve sorgular ile kullanıcı ihtiyaçlarına daha hızlı ve etkili bir şekilde cevap verebilmektedir.
Bu, veritabanının test edilmesi ve doğrulanmasının çok önemli bir faktör olduğu anlamına gelir.

Hata mesajları, başarı mesajları vb. Grafik Kullanıcı Arayüzü (GUI) yanıtları, neredeyse tüm test yöneticileri tarafından çok önemli olarak kabul edilmektedir. Bunun nedeni, GUI'nin kullanıcıların görebileceği bir uygulamanın görünen kısmı olmasıdır. Bununla birlikte, Veritabanı testi eşit derecede önemlidir ve bir tanesidir.
Deneyimlerime göre, bunu sıkıcı bir iş olarak gören birçok manuel test görevlisi gördüm, ama bu aslında değil.
Bu eğiticide, Kullanıcı Arayüzü ve MySQL sorguları aracılığıyla kara kutu veritabanı işlevselliği testini kolay örneklerle basit bir şekilde tartışacağız.
Veritabanı Testi Neden Önemlidir?
Aşağıda verilen noktalar, Veritabanı testinin önemini çok kısa bir şekilde açıklayacaktır.
- Veriler önemli bir varlıktır ve kaydedilmesi ve korunması gerekir.
- Veritabanları yeni teknolojiler ve platformlarla karmaşıklaşıyor. Bu nedenle, böcek şansı artar.
- Veritabanında depolanan değerlerle ilişkili kritik işlevler olabilir.
- Veritabanındaki sorunlar veya sorgular büyük işlevsellik sorunlarına yol açabilir.
- Verilerin doğru bir şekilde eşlendiğinden emin olmak için.
Veritabanı testi birim testi olarak yapılabilir, kara kutu testi , beyaz kutu testi ve gri kutu metni.
4 Temel Veritabanı İşlevselliği
Veritabanı tabanlı yazılımların genellikle aşağıdaki örneklerden anlaşılacağı üzere dört ana işlevi vardır.
Örnek 1:
Facebook, en ünlü sosyal ağ sitesi.

- Yeni bir hesap oluşturabilirsiniz
- Hesap ayrıntılarınızı görüntüleyin
- Hesap ayrıntılarını düzenleyin
- Hesabı silin
- Yorum oluşturabilirsiniz
- Onları görüntüleyin
- Düzenleyin
- Onları sil
Örnek 2:
Ünlü İş Arama web sitesi LinkedIn:

video dosyalarını dönüştürmek için en iyi yazılım
- Profilinizi oluşturabilirsiniz
- Görüntüle
- Düzenle
- Silin
- Gönderi ekleyebilirsiniz
- Onları görüntüleyin
- Düzenleyin
- Onları sil
Burada bir dizi ortak faaliyet fark ettiniz mi?
Evet! Haklısın.
Yazılımların çoğu, terimin bulunduğu yerden oluşturma, görüntüleme, düzenleme ve silme işlevlerini destekler. ZALİM gelir.
CRUD'nin tanımı
Bilgisayar programlamada, ZALİM Oluştur, Oku, Güncelle ve Sil anlamına gelir. Bunlar, kalıcı depolamanın dört ana ve temel işlevidir. Bunlar genellikle yazılım uygulamalarında formlar aracılığıyla yapılır.
- Oluşturmak - Veritabanına bir giriş EKLEYİN.
- Okuyun veya Geri Al - Girişi Veritabanından SEÇİN ve Görüntüleyin.
- Güncelleme - Girişi tamamen veya kısmen GÜNCELLEYİN.
- Sil veya Yok Et - Girişi DÜŞÜR / SİL.
Yazılım gereksinimlerine bağlı olarak CRUD döngüleri değişebilir.
Örneğin: bazen satış görevlisi bir hesap oluşturur ve kullanıcı onu görüntüler. Kullanıcı, bunu düzenleme veya silme ayrıcalığına sahip olmayabilir. Öte yandan, gereklilik şunlar olabilir: kullanıcı hesabını oluşturur ve satış görevlisi bunu doğrular ve onaylar. Bu döngüler, bir test uzmanı açısından çok önemlidir.
Yukarıda tartışılan işlevler için, veri tabanında çalışan bir karşılık gelen sorgu vardır.
Aşağıda, her eylem için MYSQL sorgularının örnekleri verilmiştir.
| Aksiyon | Örnek Sorgu |
|---|---|
| OLUŞTURMAK | INSERT INTO table_name (sütun1, sütun2, sütun3, ...) DEĞERLER (değer1, değer2, değer3, ...); |
| OKUYUN | Tablodan SEÇ *; |
| GÜNCELLEME | UPDATE table_name SET sütun1 = değer11, sütun2 = değer22 NEREDE koşulu; |
| SİL | TABLEDEN SİL tablo_adı sütun1 = 'değer11'; |
CRUD'nin üç çeşidi: EKMEK (Gözat, Oku, Düzenle, Ekle, Sil), DAVE (Sil, Ekle, Görüntüle, Düzenle) ve CRAP (Oluştur, Çoğalt, Ekle, İşleme).
CRUD Testi
CRUD testi, veritabanı işlevselliğinin kara kutu testidir.
Bildiğimiz gibi, Kara kutu testi, test yazılım sistemini bir 'kara kutu' olarak görür ve testler kullanıcı arayüzü aracılığıyla gerçekleştirilir.
Hesap kaydı, kişisel ayrıntıları düzenleme, ayrıntıları görüntüleme, hesabı silme vb. Gibi her ön uç işleminin veritabanında karşılık gelen bir CRUD eylemi olduğunu anladık. CRUD testi, bu eylemlerin Veritabanına düzgün bir şekilde yansıtılıp yansıtılmadığını kontrol etmek için yapılır.
CRUD testi, bir kullanıcı Kaydından sonra 'Hesap başarıyla oluşturuldu' gibi başarı mesajlarını kontrol ettiğimiz yaygın kara kutu ön uç testinden farklıdır. Burada hesap ayrıntılarının Veritabanına gerçekten girilip girilmediğini kontrol etmeliyiz.
Manuel bir test cihazının bunu yapmasının iki yolu vardır:
# 1) Sorguları kendi başımıza yürütün- SQL dilini ve yazılım gereksinimlerini iyi anlayan test uzmanları, veritabanını test etmek için kendi sorgularını yapabilir. Bu şekilde, tüm olası durumlar iyi sorgularla doğrulanabilir.
# 2) Bir geliştiricinin yardımıyla sorguları yürütün- Testçiler, uygulamanın kullanıcı arayüzünü doğrulayarak başlayabilir ve geliştiriciden sorgular alabilir.
CRUD operasyonları için test senaryoları yazılırken aşağıdaki sorular dikkate alınmalıdır:
- Test uygulaması için ne tür bir CRUD eylemi geçerlidir ve hangisi geçersizdir?
- CRUD eylemlerinin birbirleriyle ne tür bir ilişkisi vardır / olmalıdır?
- CRUD eylemleri ne zaman gerçekleştirilir?
- CRUD işlevine kim erişiyor? Sistem farklı kullanıcılar için farklı ayrıcalıklar ayarlıyor mu?
İçin genel test süreci DB testi normal manuel kara kutu GUI testinden çok farklı değildir.
Sevmek,
Aşama 1: Test ortamını hazırlayın.
Adım 2: Test adımlarını yürütün.
Aşama 3: Test sonucunu kontrol edin.
4. Adım: Beklenen sonuçlara göre gerçek sonuçları doğrulayın.
Adım 5: Hataları ve diğer bulguları bildirin.
Test sonucunu kontrol etmek için GUI yanıtı ve Sorgu sonucu kullanılır. CRUD kara kutu testi için, yalnızca SELECT olan bir sorguya ihtiyacımız var.
Hepimizin bildiği gibi, veritabanları verileri depolar. Verileri almamız gerektiğinde, SELECT sorgusu kullanılır. Kara kutu testinde, UI üzerinden yapılan eylemlerin veritabanında uygun yansımaları gösterip göstermediğini görmek için bu sorguyu kullanmamız yeterlidir.
'SEÇ' aşağıdaki şekillerde kullanılabilir:
# 1) Bir test uzmanı tüm verileri kontrol etmek ve doğrulamak isterse, SELECT sorgusunda başlangıç sembolünü (*) kullanabilir. Bu, SELECT sorgusunun en basit şeklidir.
SELECT * FROM table_name;Yukarıdaki ifade, tablo_adı tablosundaki tüm satırlardan tüm alanları seçer.
# 2) Bazı durumlarda, ilk sorgu sonucu karışık olabilir. Bir test kullanıcısı yalnızca bazı alanlarla ilgileniyorsa, aşağıdaki komut dosyası kullanılabilir.
bir karakter dizgesine nasıl dönüştürülür c ++
SELECT ‘field_1’, ‘field_2’, ‘field_3’ FROM table_name;Yukarıdaki ifade, tablo_adı tablosundaki tüm satırlardan 'alan_1', 'alan_2' ve 'alan_3' alanlarını seçer.
# 3) Bir test uzmanı sonuçları herhangi bir kritere göre görmek isterse, WHERE cümleciği kullanılabilir.
SELECT ‘field_1’ FROM table_name WHERE field_2 = ‘success’;Yukarıdaki ifade, tablo_adı tablosundaki tüm satırlardan 'alan_1' alanını seçer; burada 'alan2', 'başarı' dır.
Bir Yazılımın CRUD İşlevselliği Nasıl Test Edilir?
Aşağıdakileri göz önünde bulundur Misal Verileri depolamak için MySQL Veritabanını kullanmak için belirli kullanıcı ayrıcalıklarına izin veren bir Kullanıcı Arayüzünün
| MİSAL | VERİTABANI DETAYLARI |
|---|---|
| 1. 'Ürün Ekleme' formunu kullanarak ürün adı, ürün açıklaması, ürün fiyatı dahil tüm ayrıntıları içeren bir ürün OLUŞTURABİLİR | Veritabanı: Shopping_DB Tablo: ürün Alanlar: product_name, product_details, product_price İlgili alanlara eklenen ayrıntılarla 'ürün' tablosunda bir satır oluşturur |
| 2. 'Ürün ayrıntıları sayfası' nda ürün adı, ürün açıklaması, ürün fiyatı ayrıntılarını okuyabilir. | Veritabanı: Shopping_DB Tablo: ürün Alanlar: product_name, product_details, product_price Tüm verileri seçer veya 'ürünler' tablosundan belirli bir verileri seçer |
| 3. 'Ürün Düzenleme' formunu kullanarak ürün adını, ürün açıklamasını, ürün fiyatını GÜNCELLEYEBİLİRSİNİZ. | Veritabanı: Shopping_DB Tablo: ürün Alanlar: product_name, product_details, product_price 'Ürünler' tablosundaki belirli bir satırdaki tüm ayrıntıları veya belirli ayrıntıları güncelleyin |
| 4. Ürünü Silebilir | Veritabanı: Shopping_DB Tablo: ürün Alanlar: product_name, product_details, product_price Tabloyu bırakarak 'ürünler' tablosundaki tüm ayrıntıları silin veya ondan belirli bir satırı silin. |
Bu durumda CRUD işlevinin nasıl kontrol edilebileceğini kontrol edelim.
Not :CRUD testini her zaman veritabanı dökümlerinde gerçekleştirin çünkü bu test, veritabanında değişikliklere neden olabilir. Aşağıdaki komut, tüm veritabanının bir dökümünü almak için kullanılabilir.
$ mysqldump -u (uname) -p (pass) Shopping_DB> Shopping_DB_backup.sql
# 1) CREATE Functionality
Yeni bir ürün öğesi ekleyerek aşağıdaki adımlar takip edilebilir:
- 'Ürün Ekleme' formunu yükleyin.
- Ürün adını girin, 'test adı' deyin.
- Ürün açıklamasını girin, 'bu test ürünü ayrıntısı' deyin.
- Ürün fiyatını girin, '100' deyin.
- Formu gönderin.
Sonucu kontrol etmek:
- Test cihazı, ürünün yazılım uygulamasının ön ucunda tüm ayrıntılarla görüntülenip görüntülenmediğini manuel olarak doğrular.
- Test cihazı, belirli bir satırın mevcut olup olmadığını kontrol etmek için MYSQL veritabanı sunucusunda sorguyu yürütür.
Sorgu:
youtube videosunu mp3'e en iyi dönüştürme
SELECT * FROM products WHERE product_name = ‘test name’;MySQL'den Sorgu Sonucu:
İlgili ayrıntılara sahip bir satır aşağıdaki gibi görüntülenmelidir:
| mysql> SEÇİN * ürünlerden NEREDE product_name = 'test adı'; + ------------- + ----------------------------- + ----- ------------ + | ürün_adı | product_details | ürün_fiyatı | + ------------- + ----------------------------- + ----- ------------ + | test adı | bu test ürün detaylarıdır | 100 | |
Dikkate alınacak diğer durumlar:
- Bazı sistemler için farklı kullanıcılar farklı ayrıcalıklara sahip olacaktır. Bu durumda, test uzmanlarının her kullanıcı rolü için yanıtı kontrol etmesi gerekebilir.
- Yinelenen ürünlere izin verilmiyorsa, bir test cihazı aynı ayrıntılara sahip bir ürünü bir kez daha ekleyerek bunu kontrol edebilir. Bu sefer veri tabanında aynı ürüne karşılık gelen ikinci bir giriş olmamalıdır.
- Yazılım bir seferde birden fazla ürün oluşturulmasına izin veriyorsa, test uzmanı, gönderideki tüm ürünlerin tüm ayrıntılarının veritabanına doğru şekilde girilip girilmediğini kontrol edebilir.
- Farklı giriş kombinasyonlarını deneyin.
- Sunucu kapalı kalma süresinde ne olduğunu kontrol edin.
# 2) OKUMA İşlevi
Oluşturulan girişin okunabilir olup olmadığını kontrol etmek için aşağıdaki adımlar takip edilebilir:
- CREATE işlevi aracılığıyla farklı giriş kombinasyonlarına sahip bazı ürünler oluşturun, örneğin test adı 1, test adı 2, test adı 3.
- Ürünleri aramayı deneyin.
Sonucu kontrol etmek:
- Test cihazı, ürün ayrıntılarının doğru olup olmadığını manuel olarak doğrular.
- Test cihazı, ayrıntıları veri tabanına kaydedilenlerle karşılaştırır.
Sorgu:
| ÜRÜNLERDEN SEÇİN * WHERE product_name = ‘test name 1’ VEYA product_name = ‘test name 12’ VEYA product_name = ‘test name 3’; |
MySQL'den Sorgu Sonucu:
Seçilen ürünlerin detayları görüntülenmelidir. Test uzmanı bunu doğrulayabilir ve kullanıcı arayüzündeki sonuçlarla karşılaştırabilir.
| mysql> SELECT * FROM products WHERE product_name = ‘test name 1’ VEYA product_name = ‘test name 12’ OR product_name = ‘test name 3’; + ------------- + ----------------------------- + ----- ------------ + | ürün_adı | product_details | ürün_fiyatı | + ------------- + ----------------------------- + ----- ------------ + | test adı 1 | bu test ürünü detay1 | 100 | | test adı 2 | bu test ürünü detay2 | 100 | | test adı 3 | bu test ürünü detay3 | 100 | |
Dikkate alınacak diğer durumlar:
- Öğeleri birer birer görüntüleyin.
- Aynı anda birden fazla öğeyi görüntüleyin.
- Var olmayan bir öğeyi görüntülemeye çalışıyorum.
- Farklı koşullarda aramayı deneyin.
- Farklı kullanıcı rolleri için işlevselliği kontrol etmeyi deneyin.
- Sunucu kapalı kalma süresinde ne olduğunu kontrol edin.
# 3) GÜNCELLEME İşlevi
Mevcut girişleri düzenlemek veya güncellemek için aşağıdaki adımlar izlenebilir:
- CREATE işlevini kullanarak bir ürün oluşturun.
- Ürünün farklı alanlarını düzenleyin, 'V Yaka Üstü' olarak 'test adı' deyin.
- Sunmak
Sonucu kontrol etmek:
- Test cihazı, ürün ayrıntılarının değiştiğini manuel olarak doğrular
- Test cihazı, MYSQL sorgusunu yürütür ve ayrıntıları görür
Sorgu:
SELECT * FROM products WHERE product_name = ‘V Neck Top’;MySQL'den Sorgu Sonucu:
İlgili ayrıntıları içeren bir satır görüntülenmelidir.
| mysql> SEÇİN * ürünlerden NEREDE product_name = ‘V Yaka Üstü’; + ------------- + ----------------------------- + ----- ------------ + | ürün_adı | product_details | ürün_fiyatı | + ------------- + ----------------------------- + ----- ------------ + | V Yaka Üst | bu test ürün detaylarıdır | 100 | + ------------- + ----------------------------- + ----- ------------ + |
Eski bir ürün adıyla arama yaparsanız, veritabanı ayrıntıları döndürmemelidir.
Dikkate alınacak diğer durumlar:
- Aynı anda birden çok öğeyi güncelleyin.
- Zaten var olan bir anahtar değerine güncelleyin.
- Tüm ayrıntıları veya kısmi ayrıntıları güncelleyin.
- Alanları farklı girdi kombinasyonları ile güncelleyin.
- Farklı Ayrıcalıklar için güncellenmiş özelliği kontrol edin.
- Sunucu aksama süreleri sırasında ne olduğunu kontrol edin.
# 4) SİLME İşlevi
Silme işlevini kontrol etmek için aşağıdaki adımlar izlenebilir:
- CREATE işlevselliğine sahip bir ürün oluşturun.
- Ürünü silin.
Sonucu kontrol etmek:
- Test cihazı, ürünün kullanıcı arayüzünden kaldırılıp kaldırılmadığını manuel olarak kontrol eder
- Test cihazı, MySQL veritabanını manuel olarak kontrol eder ve ilgili satırın silindiğini onaylar.
Sorgu :
SELECT * FROM products WHERE product_name = ‘test name’;MySQL'den Sorgu Sonucu:
Bu, sorgu sonucunu aşağıda gösterildiği gibi göstermelidir.
mysql>SELECT * FROM products WHERE product_name = ‘test name’; Empty set (0.00 sec)Dikkate alınacak diğer durumlar:
- Tek bir istekte birden çok öğeyi silin.
- Güncellenmiş bir öğeyi silin.
- İki sekme alın ve bir ürün için her iki sekmeden de silme isteği vermeye çalışın.
Sonuç
Bir yazılım uygulamasının güvenliğini ve güvenilirliğini doğruladığı için veritabanı testi çok önemlidir. Çoğu yazılım uygulaması, veritabanına / veritabanından veri oluşturma, okuma ve güncelleme ve silme ile ilgilenir. Yazılım gereksinimine göre CRUD döngüleri değişebilir. Bir test uzmanı CRUD döngüsüne göre test senaryoları planlamalıdır.
CRUD işlevleri manuel olarak test edilebilir ve Kullanıcı arayüzü ve Veritabanından doğrulanabilir. SELECT sorgusu, her CRUD işlemine karşılık gelen veri tabanındaki değişiklikleri doğrulamak için kullanılabilir.
CRUD testinde uzman mısınız? CRUD'da yeni olan okuyucularımızla paylaşacak ilginç gerçekleriniz var mı? Aşağıdaki yorumlar bölümünde düşüncelerinizi / önerilerinizi ifade etmekten çekinmeyin !!
Önerilen Kaynaklar
- JMeter ile Veritabanı Testi
- ISTQB Test Sertifikasyon Cevaplı Örnek Soru Kağıtları
- En İyi Yazılım Test Araçları 2021 (QA Test Otomasyon Araçları)
- Kara Kutu Testi ile Beyaz Kutu Testi Arasındaki Temel Farklılıklar
- Primer e-Kitap İndirmeyi Test Etme
- XML'den Veritabanı Testine Basit Bir Yaklaşım
- 40'tan Fazla En İyi Veritabanı Test Aracı - Popüler Veri Test Çözümleri
- GUI Test Eğitimi: Eksiksiz Bir Kullanıcı Arayüzü (UI) Test Kılavuzu