Ujian Mutasi dalam Ujian Perisian: Skor Mutant & Contoh Analisis

Isi kandungan:

Anonim

Ujian Mutasi

Mutation Testing adalah jenis pengujian perisian di mana pernyataan tertentu dari kod sumber diubah / dimutasi untuk memeriksa sama ada kes ujian dapat menemui kesalahan dalam kod sumber. Matlamat Pengujian Mutasi adalah memastikan kualiti kes ujian dari segi ketahanan bahawa ia harus gagal kod sumber bermutasi.

Perubahan yang dilakukan dalam program mutan harus disimpan sangat kecil sehingga tidak mempengaruhi objektif keseluruhan program. Pengujian Mutasi juga disebut strategi pengujian berdasarkan Kesalahan kerana melibatkan membuat kesalahan dalam program dan ini adalah jenis Uji Kotak Putih yang terutama digunakan untuk Uji Unit.

Mutasi pada awalnya dicadangkan pada tahun 1971 tetapi hilang semangat kerana kos yang tinggi. Sekarang, sekali lagi ia memilih stim dan digunakan secara meluas untuk bahasa seperti Java dan XML.

Dalam tutorial ini, anda akan belajar-

  • Apa itu Ujian Mutasi?
  • Bagaimana melaksanakan Ujian Mutasi?
  • Bagaimana Membuat Program Mutant?
  • Apa yang perlu diubah dalam Program Mutant?
  • Jenis Ujian Mutasi
  • Skor Mutasi:
  • Kelebihan Uji Mutasi:
  • Kelemahan Ujian Mutasi:

Bagaimana melaksanakan Ujian Mutasi?

Berikut adalah langkah-langkah untuk melaksanakan pengujian mutasi (analisis mutasi):

Langkah 1 : Kesalahan diperkenalkan ke dalam kod sumber program dengan membuat banyak versi yang disebut mutan. Setiap mutan harus mengandungi satu kesalahan, dan tujuannya adalah untuk menyebabkan versi mutan gagal yang menunjukkan keberkesanan kes ujian.

Langkah 2 : Kes ujian digunakan untuk program asal dan juga program mutan. Kes Ujian harus mencukupi, dan disesuaikan untuk mengesan kesalahan dalam program.

Langkah 3 : Bandingkan hasil program asal dan mutant.

Langkah 4 : Sekiranya program asal dan program mutan menghasilkan output yang berbeza, maka mutan dibunuh oleh kes ujian. Oleh itu, kes ujian cukup baik untuk mengesan perubahan antara program asal dan program mutan.

Langkah 5 : Sekiranya program asal dan program mutan menghasilkan output yang sama, Mutant akan tetap hidup. Dalam kes seperti itu, kes ujian yang lebih berkesan perlu dibuat yang membunuh semua mutan.

Bagaimana Membuat Program Mutant?

Mutasi tidak lain adalah perubahan sintaksis tunggal yang dibuat pada penyataan program. Setiap program mutan harus berbeza dari program asal dengan satu mutasi.

Program Asal Program Mutant
Sekiranya (x> y)
Cetak "Hello"
Lain-lain
Cetak "Hai"
Sekiranya ( x )Cetak "Hello"
Lain-lain
Cetak "Hai"

Apa yang perlu diubah dalam Program Mutant?

Ada beberapa teknik yang dapat digunakan untuk menghasilkan program mutan. Mari lihat mereka

Pengendali penggantian operasi Pengendali Pengubahsuaian Ekspresi Pengendali pengubahsuaian pernyataan
Gantikan operan dengan operan lain (x dengan y atau y dengan x) atau dengan nilai malar. Gantikan operator atau penyisipan operator baru dalam pernyataan program. Pernyataan terprogram diubah untuk membuat program mutan.
Contoh-
Jika (x> y) gantikan nilai x dan y
Jika (5> y) gantikan x dengan pemalar 5
Contoh-
Jika (x == y)
Kita dapat mengganti == ke> = dan mempunyai program mutan sebagai
Jika (x> = y) dan memasukkan ++ dalam pernyataan
Jika (x == ++ y)
Contoh-
Hapus bahagian lain dalam pernyataan if-else
Hapus keseluruhan pernyataan if-else untuk memeriksa bagaimana program berkelakuan
Beberapa operator mutasi sampel:
  • Penggantian label GOTO
  • Penggantian penyata kembali
  • Penghapusan penyataan
  • Penyisipan pengendali tidak wajar (Suka - dan ++)
  • Penggantian penyambung logik
  • Penggantian nama array yang setanding
  • Membuang bahagian lain dalam pernyataan if-else
  • Menambah atau mengganti operator
  • Penggantian pernyataan dengan menukar data
  • Pengubahsuaian Data untuk pemboleh ubah
  • Pengubahsuaian jenis data dalam program

Automasi Ujian Mutasi:

Ujian mutasi sangat memakan masa dan rumit untuk dilaksanakan secara manual. Untuk mempercepat proses, disarankan untuk mencari alat automasi. Alat automasi mengurangkan kos ujian juga.

Senarai alat yang ada -

  • Penyerang
  • Ujian PIT

Jenis Ujian Mutasi

Dalam Kejuruteraan Perisian, pengujian Mutasi pada dasarnya dapat dikategorikan menjadi 3 jenis - mutasi pernyataan, mutasi keputusan, dan mutasi nilai.

  1. Mutasi Pernyataan - pemaju memotong dan menampal sebahagian kod yang hasilnya mungkin merupakan penghapusan beberapa baris
  2. Nilai Mutasi - nilai parameter utama diubah
  3. Mutasi Keputusan - pernyataan kawalan harus diubah

Skor Mutasi:

Skor mutasi ditakrifkan sebagai peratusan mutan terbunuh dengan jumlah mutan.

  • Skor Mutasi = (Mutan yang Dibunuh / Jumlah Mutan) * 100

Kes ujian mutasi mencukupi sekiranya skornya 100%. Hasil eksperimen telah menunjukkan bahawa ujian mutasi adalah pendekatan yang berkesan untuk mengukur kecukupan kes ujian. Tetapi, kelemahan utama adalah bahawa kos tinggi menghasilkan mutan dan melaksanakan setiap kes ujian terhadap program mutan tersebut.

Kelebihan Uji Mutasi:

Berikut adalah kelebihan Uji Mutasi:

  • Ini adalah pendekatan yang kuat untuk mencapai liputan tinggi dari program sumber.
  • Ujian ini mampu menguji program mutan secara komprehensif.
  • Ujian mutasi membawa tahap pengesanan ralat yang baik kepada pembangun perisian.
  • Kaedah ini mengungkap kekaburan dalam kod sumber dan mempunyai keupayaan untuk mengesan semua kesalahan dalam program.
  • Pelanggan mendapat manfaat daripada ujian ini dengan mendapatkan sistem yang paling dipercayai dan stabil.

Kelemahan Ujian Mutasi:

Di sisi lain, berikut adalah kelemahan pengujian Mutant:

  • Ujian mutasi sangat mahal dan memakan masa kerana terdapat banyak program mutan yang perlu dihasilkan.
  • Sejak memakan masa, wajar untuk mengatakan bahawa ujian ini tidak dapat dilakukan tanpa alat automasi.
  • Setiap mutasi akan mempunyai bilangan kes ujian yang sama dengan program asalnya. Oleh itu, sebilangan besar program mutan mungkin perlu diuji dengan set ujian asal.
  • Oleh kerana kaedah ini melibatkan perubahan kod sumber, sama sekali tidak berlaku untuk Ujian Kotak Hitam.

Kesimpulan:

Adakah anda mahukan ujian lengkap aplikasi anda? Jawapannya adalah ujian Mutasi. Ini adalah teknik yang paling komprehensif untuk menguji program. Ini adalah kaedah yang memeriksa keberkesanan dan ketepatan program pengujian untuk mengesan kesalahan atau kesalahan dalam sistem.