7 Prinsip Pengujian Perangkat Lunak: Belajar dengan Contoh

Daftar Isi:

Anonim

Tutorial ini memperkenalkan tujuh Prinsip Pengujian Perangkat Lunak dasar yang harus diketahui oleh setiap penguji Perangkat Lunak dan profesional QA.

7 Prinsip Pengujian Perangkat Lunak

  • Pengujian menunjukkan adanya cacat
  • Pengujian menyeluruh tidak mungkin dilakukan
  • Pengujian awal
  • Pengelompokan yang rusak
  • Paradoks pestisida
  • Pengujian bergantung pada konteks
  • Tidak adanya kesalahan kekeliruan

Mari pelajari asas pengujian dengan contoh video berikut-

Klik di sini jika video tidak dapat diakses

Latar Belakang

Penting agar Anda mencapai hasil pengujian yang optimal saat melakukan pengujian perangkat lunak tanpa menyimpang dari tujuan. Tetapi bagaimana Anda menentukan bahwa Anda mengikuti strategi yang tepat untuk pengujian? Untuk itu, Anda perlu berpegang pada beberapa prinsip pengujian dasar. Berikut adalah tujuh prinsip pengujian umum yang dipraktikkan secara luas di industri perangkat lunak.

Untuk memahami ini, pertimbangkan skenario di mana Anda memindahkan file dari folder A ke Folder B.

Pikirkan semua kemungkinan cara untuk menguji ini.

Selain skenario biasa, Anda juga dapat menguji kondisi berikut

  • Mencoba memindahkan file saat Terbuka
  • Anda tidak memiliki hak keamanan untuk menempelkan file di Folder B
  • Folder B ada di drive bersama dan kapasitas penyimpanan penuh.
  • Folder B sudah memiliki file dengan nama yang sama, sebenarnya daftarnya tidak ada habisnya
  • Atau misalkan Anda memiliki 15 bidang masukan untuk diuji, masing-masing memiliki 5 kemungkinan nilai, jumlah kombinasi yang akan diuji adalah 5 15

Jika Anda menguji seluruh kemungkinan kombinasi, proyek WAKTU & BIAYA PELAKSANAAN akan meningkat secara eksponensial. Kami membutuhkan prinsip dan strategi tertentu untuk mengoptimalkan upaya pengujian

Inilah 7 Prinsip:

1) Pengujian menyeluruh tidak mungkin dilakukan

Iya! Pengujian menyeluruh tidak mungkin dilakukan. Sebaliknya, kami membutuhkan jumlah pengujian yang optimal berdasarkan penilaian risiko aplikasi.

Dan pertanyaan jutaan dolar adalah, bagaimana Anda menentukan risiko ini?

Untuk menjawabnya mari kita lakukan latihan

Menurut Anda, operasi mana yang paling mungkin menyebabkan sistem Operasi Anda gagal?

Saya yakin sebagian besar dari Anda pasti sudah menebak, Membuka 10 aplikasi berbeda sekaligus.

Jadi jika Anda menguji sistem Operasi ini, Anda akan menyadari bahwa cacat mungkin ditemukan dalam aktivitas multi-tasking dan perlu diuji secara menyeluruh yang membawa kita ke prinsip berikutnya Defect Clustering.

2) Clustering Cacat

Defect Clustering yang menyatakan bahwa sejumlah kecil modul berisi sebagian besar cacat yang terdeteksi. Ini adalah penerapan Prinsip Pareto untuk pengujian perangkat lunak: sekitar 80% masalah ditemukan di 20% modul.

Berdasarkan pengalaman, Anda dapat mengidentifikasi modul berisiko tersebut. Namun pendekatan ini memiliki masalah tersendiri

Jika pengujian yang sama diulang terus menerus, pada akhirnya kasus pengujian yang sama tidak akan menemukan bug baru lagi.

3) Paradoks Pestisida

Penggunaan berulang-ulang dari campuran pestisida yang sama untuk membasmi serangga selama bertani akan lama kelamaan menyebabkan serangga mengembangkan resistensi terhadap pestisida. Sehingga pestisida tidak efektif pada serangga. Hal yang sama berlaku untuk pengujian perangkat lunak. Jika serangkaian pengujian berulang yang sama dilakukan, metode ini tidak akan berguna untuk menemukan cacat baru.

Untuk mengatasinya, kasus uji perlu ditinjau & direvisi secara berkala, menambahkan kasus uji baru & berbeda untuk membantu menemukan lebih banyak cacat.

Penguji tidak bisa begitu saja bergantung pada teknik pengujian yang ada. Dia harus terus menerus memperbaiki metode yang ada untuk membuat pengujian lebih efektif. Tetapi bahkan setelah semua keringat & kerja keras ini dalam pengujian, Anda tidak akan pernah dapat mengklaim produk Anda bebas bug. Untuk menjelaskan poin ini, mari kita lihat video peluncuran publik Windows 98 ini

Anda pikir perusahaan seperti MICROSOFT tidak akan menguji OS mereka secara menyeluruh & akan mempertaruhkan reputasi mereka hanya untuk melihat OS mereka rusak selama peluncuran publiknya!

4) Pengujian menunjukkan adanya cacat

Oleh karena itu, prinsip pengujian menyatakan bahwa - Pengujian berbicara tentang adanya cacat dan tidak berbicara tentang tidak adanya cacat. yaitu Pengujian Perangkat Lunak mengurangi kemungkinan cacat yang belum ditemukan yang tersisa dalam perangkat lunak tetapi bahkan jika tidak ada cacat yang ditemukan, itu bukan bukti kebenaran.

Tetapi bagaimana jika, Anda bekerja ekstra keras, mengambil semua tindakan pencegahan & membuat produk perangkat lunak Anda 99% bebas bug. Dan perangkat lunak tidak memenuhi kebutuhan & persyaratan klien.

Ini membawa kita ke prinsip berikutnya, yang menyatakan bahwa- Tidak Ada Kesalahan

5) Tidak Ada Kesalahan - kekeliruan

Mungkin saja perangkat lunak yang 99% bebas bug masih tidak dapat digunakan. Ini bisa terjadi jika sistem diuji secara menyeluruh untuk persyaratan yang salah. Pengujian perangkat lunak tidak hanya menemukan cacat, tetapi juga untuk memeriksa bahwa perangkat lunak memenuhi kebutuhan bisnis. Tidak adanya Kesalahan adalah suatu Kekeliruan yaitu Menemukan dan memperbaiki cacat tidak membantu jika sistem yang dibangun tidak dapat digunakan dan tidak memenuhi kebutuhan & persyaratan pengguna.

Untuk mengatasi masalah ini, prinsip pengujian selanjutnya menyatakan bahwa Pengujian Awal

6) Pengujian Awal

Pengujian Awal - Pengujian harus dimulai sedini mungkin dalam Siklus Hidup Pengembangan Perangkat Lunak. Sehingga setiap cacat dalam persyaratan atau fase desain ditangkap di tahap awal. Jauh lebih murah untuk memperbaiki Cacat pada tahap awal pengujian. Tetapi seberapa awal seseorang harus memulai pengujian? Direkomendasikan agar Anda mulai menemukan bug saat persyaratan ditentukan. Lebih lanjut tentang prinsip ini dalam tutorial pelatihan selanjutnya.

7) Pengujian bergantung pada konteks

Pengujian bergantung pada konteks yang pada dasarnya berarti bahwa cara Anda menguji situs e-niaga akan berbeda dari cara Anda menguji aplikasi komersial. Semua perangkat lunak yang dikembangkan tidak identik. Anda mungkin menggunakan pendekatan, metodologi, teknik, dan jenis pengujian yang berbeda tergantung pada jenis aplikasi. Misalnya pengujian, sistem POS apa pun di toko ritel akan berbeda dari pengujian mesin ATM.

Mitos: "Prinsip hanya untuk referensi. Saya tidak akan menggunakannya dalam praktik."

Ini sangat tidak benar. Prinsip Pengujian akan membantu Anda membuat Strategi Pengujian yang efektif dan membuat draf kasus pengujian yang menangkap kesalahan.

Tetapi mempelajari prinsip-prinsip pengujian sama seperti belajar mengemudi untuk pertama kalinya.

Awalnya, saat Anda belajar mengemudi, Anda memperhatikan setiap hal seperti perpindahan gigi, kecepatan, penanganan kopling, dll. Tetapi dengan pengalaman, Anda hanya fokus pada mengemudi, sisanya akan datang secara alami. Sehingga Anda bahkan melakukan percakapan dengan penumpang lain di dalam mobil.

Hal yang sama berlaku untuk prinsip pengujian. Penguji berpengalaman telah menginternalisasi prinsip-prinsip ini ke tingkat yang mereka terapkan bahkan tanpa berpikir. Oleh karena itu, mitos bahwa prinsip-prinsip tersebut tidak digunakan dalam praktik tidaklah benar.