Pengujian Basis Data - Teknik
Bab ini menjelaskan teknik paling umum yang digunakan untuk melakukan Pengujian Database.
Pengujian Skema Database
Seperti disebutkan sebelumnya, ini melibatkan pengujian setiap objek di Skema.
Memverifikasi Database dan perangkat
- Memverifikasi nama database
- Memverifikasi perangkat data, perangkat log, dan perangkat dump
- Memverifikasi apakah ruang yang dialokasikan cukup untuk setiap database
- Memverifikasi pengaturan opsi database
Tabel, kolom, pemeriksaan aturan tipe kolom
Verifikasi item yang diberikan di bawah ini untuk mengetahui perbedaan antara pengaturan aktual dan yang diterapkan.
Nama semua tabel di database
Nama kolom untuk setiap tabel
Jenis kolom untuk setiap tabel
NULL nilai diperiksa atau tidak
Apakah default terikat ke kolom tabel yang benar
Definisi aturan untuk mengoreksi nama tabel dan hak akses
Kunci dan Indeks
Verifikasi Kunci dan indeks di setiap tabel -
Kunci utama untuk setiap tabel
Kunci asing untuk setiap tabel
Tipe data antara kolom kunci asing dan kolom di indeks tabel lain, unik berkerumun atau tidak berkerumun atau tidak unik
Tes Prosedur Tersimpan
Ini melibatkan pemeriksaan apakah prosedur tersimpan didefinisikan dan hasil keluaran dibandingkan. Dalam tes Prosedur Tersimpan, poin-poin berikut diperiksa -
Nama prosedur yang disimpan
Nama parameter, jenis parameter, dll.
Output- Apakah output berisi banyak record. Tidak ada baris yang terpengaruh atau hanya beberapa record yang diekstraksi.
Apa fungsi Stored Procedure dan apa yang seharusnya tidak dilakukan oleh Stored Procedure?
Meneruskan kueri masukan sampel untuk memeriksa apakah prosedur tersimpan mengekstrak data yang benar.
Stored Procedure Parameters- Panggil prosedur yang tersimpan dengan data batas dan dengan data yang valid. Buat setiap parameter tidak valid satu kali dan jalankan prosedur.
Return values- Periksa nilai yang dikembalikan oleh prosedur tersimpan. Jika terjadi kegagalan, bukan nol harus dikembalikan.
Error messages check- Lakukan perubahan sedemikian rupa sehingga prosedur yang disimpan gagal dan menghasilkan setiap pesan kesalahan setidaknya sekali. Periksa skenario pengecualian apa pun ketika tidak ada pesan kesalahan yang telah ditentukan sebelumnya.
Tes Pemicu
Dalam uji Pemicu, penguji harus melakukan tugas-tugas berikut -
- Pastikan nama pemicu sudah benar.
- Validasi pemicu jika dibuat untuk kolom tabel tertentu.
- Validasi pembaruan pemicu.
- Perbarui catatan dengan data yang valid.
- Perbarui catatan dengan data tidak valid dan tutupi setiap kesalahan pemicu.
- Perbarui rekaman saat masih direferensikan oleh baris di tabel lain.
- Pastikan mengembalikan transaksi saat terjadi kegagalan.
- Cari tahu setiap kasus di mana pemicu tidak seharusnya membatalkan transaksi.
Skrip Pengaturan Server
Dua jenis tes harus dilakukan -
- Menyiapkan database dari awal, dan
- Untuk mengatur database yang sudah ada.
Tes Integrasi SQL Server
Tes integrasi harus dilakukan setelah Anda selesai dengan pengujian komponen.
Prosedur yang disimpan harus dipanggil secara intensif untuk memilih, menyisipkan, memperbarui, dan menghapus rekaman dalam tabel yang berbeda untuk menemukan konflik dan ketidakcocokan.
Setiap konflik antara skema dan pemicu.
Setiap konflik antara prosedur dan skema yang tersimpan.
Setiap konflik antara prosedur tersimpan dan pemicu.
Metode Pengujian Fungsional
Pengujian fungsional dapat dilakukan dengan membagi database menjadi modul sesuai fungsionalitas. Fungsinya adalah dari dua jenis berikut -
Type 1- Dalam pengujian Tipe 1, cari tahu fitur-fitur proyek. Untuk setiap fitur utama, cari tahu skema, pemicu, dan prosedur tersimpan yang bertanggung jawab untuk mengimplementasikan fungsi itu dan memasukkannya ke dalam grup fungsional. Kemudian uji setiap kelompok bersama-sama.
Type 2- Dalam pengujian Tipe 2, batas grup fungsional di ujung belakang tidak jelas. Anda dapat memeriksa aliran data dan melihat di mana Anda dapat memeriksa data. Mulai dari ujung depan.
Proses berikut berlangsung -
Ketika sebuah layanan memiliki permintaan atau menyimpan data, beberapa prosedur tersimpan akan dipanggil.
Prosedur akan memperbarui beberapa tabel.
Prosedur yang tersimpan tersebut akan menjadi tempat untuk memulai pengujian dan tabel tersebut akan menjadi tempat untuk memeriksa hasil pengujian.
Pengujian Stres
Stress Testing melibatkan mendapatkan daftar fungsi database utama dan prosedur tersimpan yang sesuai. Ikuti langkah-langkah yang diberikan di bawah ini untuk Stress Testing -
Tulis skrip pengujian untuk mencoba fungsi tersebut dan setiap fungsi harus diperiksa setidaknya sekali dalam satu siklus penuh.
Lakukan tes script berulang kali untuk jangka waktu tertentu.
Memverifikasi file log untuk memeriksa kebuntuan, kegagalan memori, kerusakan data, dll.
Pengujian Tolok Ukur
Jika database Anda tidak memiliki masalah data atau bug, kinerja sistem dapat diperiksa. Kinerja sistem yang buruk dapat ditemukan dalam pengujian benchmark dengan memeriksa parameter yang diberikan di bawah ini -
- Performa tingkat sistem
- Identifikasi fungsi / fitur yang paling mungkin digunakan
- Timing - waktu maksimum, waktu minimum dan waktu rata-rata untuk menjalankan fungsi
- Volume akses
Menguji Database melalui Front-end
Bug back-end terkadang juga dapat ditemukan dengan melakukan pengujian front-end. Anda dapat mengikuti langkah-langkah sederhana yang diberikan di bawah ini untuk mendeteksi bug dengan pengujian front-end.
Tulis kueri dari front-end dan keluarkan pencarian.
Ambil catatan yang ada, ubah nilainya di beberapa bidang, dan simpan catatan tersebut. (Ini melibatkan pernyataan UPDATE atau memperbarui prosedur tersimpan dan pemicu pembaruan.)
Sisipkan item menu baru di jendela front-end. Isi informasi dan simpan catatan. (Ini melibatkan pernyataan INSERT atau penyisipan disimpan prosedur dan pemicu penghapusan.)
Ambil rekaman yang ada, klik tombol HAPUS atau HAPUS, dan konfirmasi penghapusan. (Ini melibatkan pernyataan DELETE atau penghapusan prosedur tersimpan dan pemicu penghapusan.)
Ulangi kasus uji ini dengan data yang tidak valid dan lihat bagaimana database merespons.