7 Prinsip Pengujian Perangkat Lunak beserta Contohnya
7 Prinsip Pengujian Perangkat Lunak
1) Pengujian menyeluruh tidak mungkin dilakukan
2) Cacat Clustering
3) Paradoks Pestisida
4) Pengujian menunjukkan adanya cacat
5) Tidak adanya Kesalahan – kekeliruan
6) Pengujian Awal
7) Pengujian bergantung pada konteks
Mari kita pelajari prinsip pengujian dengan yang berikut ini contoh video-
Klik di sini jika video tidak dapat diakses
Latar Belakang
Penting bagi Anda untuk mencapai hasil pengujian yang optimal saat melakukan pengujian perangkat lunak tanpa menyimpang dari tujuan. Namun, bagaimana Anda memastikan bahwa Anda mengikuti strategi pengujian yang tepat? Untuk itu, Anda perlu berpegang pada beberapa prinsip pengujian dasar. Berikut adalah tujuh prinsip pengujian umum yang banyak dipraktikkan dalam industri perangkat lunak.
Untuk memahami hal ini, pertimbangkan skenario di mana Anda memindahkan file dari folder A ke Folder B.
Pikirkan semua cara yang mungkin untuk mengujinya.
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, bahkan daftarnya tidak ada habisnya
- Atau misalkan Anda memiliki 15 kolom input untuk diuji, masing-masing memiliki 5 kemungkinan nilai, jumlah kombinasi yang akan diuji adalah 5^15
Jika Anda menguji seluruh kemungkinan kombinasi WAKTU & BIAYA PELAKSANAAN proyek akan meningkat secara eksponensial. Kita memerlukan prinsip dan strategi tertentu untuk mengoptimalkan upaya pengujian
Berikut 7 Prinsipnya:
1) Pengujian menyeluruh tidak mungkin dilakukan
Ya! Pengujian menyeluruh tidak mungkin dilakukan. Sebaliknya, kita memerlukan jumlah pengujian yang optimal berdasarkan penilaian risiko aplikasi.
Dan pertanyaan jutaan dolarnya adalah, bagaimana Anda menentukan risiko ini?
Untuk menjawabnya mari kita lakukan latihan
Menurut pendapat Anda, operasi manakah yang paling mungkin menyebabkan Operaapakah sistemnya gagal?
Saya yakin sebagian besar dari Anda pasti sudah menebaknya, Membuka 10 aplikasi berbeda secara bersamaan.
Jadi jika Anda sedang menguji ini Operasistem, Anda akan menyadari bahwa cacat kemungkinan besar ditemukan dalam aktivitas multi-tasking dan perlu diuji secara menyeluruh yang membawa kita ke prinsip berikutnya Cacat Clustering
2) Cacat Clustering
Cacat Clustering yang menyatakan bahwa sejumlah kecil modul berisi sebagian besar cacat yang terdeteksi. Ini adalah penerapan Prinsip Pareto pada pengujian perangkat lunak: sekitar 80% masalah ditemukan di 20% modul.
Berdasarkan pengalaman, Anda dapat mengidentifikasi modul berisiko tersebut. Namun pendekatan ini mempunyai permasalahan tersendiri
Jika pengujian yang sama diulangi berulang kali, pada akhirnya kasus pengujian yang sama tidak akan lagi menemukan bug baru.
3) Paradoks Pestisida
Penggunaan campuran pestisida yang sama secara berulang-ulang untuk membasmi serangga selama bercocok tanam lama kelamaan akan menyebabkan serangga tersebut menjadi resisten terhadap pestisida sehingga tidak efektifnya pestisida terhadap serangga. Hal yang sama berlaku untuk pengujian perangkat lunak. Jika rangkaian pengujian berulang yang sama dilakukan, metode tersebut tidak akan berguna untuk menemukan cacat baru.
Untuk mengatasi hal ini, kasus uji perlu ditinjau & direvisi secara berkala, menambahkan kasus uji baru & berbeda untuk membantu menemukan lebih banyak cacat.
Penguji tidak bisa hanya bergantung pada teknik pengujian yang ada. Dia harus terus berupaya meningkatkan metode yang ada agar pengujian lebih efektif. Namun bahkan setelah semua keringat dan kerja keras dalam pengujian, Anda tidak akan pernah bisa mengklaim produk Anda bebas bug. Untuk memahami hal ini, mari kita lihat video peluncuran publik ini Windows 98
Anda pikir perusahaan seperti MICROSOFT tidak akan menguji OS mereka secara menyeluruh & akan mempertaruhkan reputasi mereka hanya untuk melihat OS mereka mogok saat peluncuran publik!
4) Pengujian menunjukkan adanya cacat
Oleh karena itu, prinsip pengujian menyatakan bahwa – Pengujian berbicara tentang keberadaan cacat dan tidak berbicara tentang tidak adanya cacat. Yaitu Pengujian Perangkat Lunak mengurangi kemungkinan sisa cacat yang belum ditemukan dalam perangkat lunak, tetapi meskipun tidak ditemukan cacat, hal tersebut bukan merupakan bukti kebenarannya.
Namun bagaimana jika, Anda bekerja ekstra keras, melakukan semua tindakan pencegahan & menjadikan produk perangkat lunak Anda 99% bebas bug. Dan perangkat lunak tidak memenuhi kebutuhan & persyaratan klien.
Hal ini membawa kita pada prinsip berikutnya, yang menyatakan bahwa- Tidak Ada Kesalahan
5) Tidak adanya Kesalahan – kekeliruan
Ada kemungkinan software yang 99% bebas bug masih tidak dapat digunakan. Hal ini dapat terjadi jika sistem diuji secara menyeluruh untuk menemukan persyaratan yang salah. Pengujian perangkat lunak tidak hanya sekedar menemukan cacat, tetapi juga untuk memeriksa apakah perangkat lunak memenuhi kebutuhan bisnis. Tidak adanya Error 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 permasalahan tersebut maka prinsip pengujian selanjutnya menyatakan bahwa Early Testing
6) Pengujian Awal
Pengujian Awal – Pengujian harus dimulai sedini mungkin dalam Siklus Hidup Pengembangan Perangkat Lunak. Sehingga setiap cacat dalam persyaratan atau fase desain dapat terdeteksi pada tahap awal. Jauh lebih murah untuk memperbaiki Cacat pada tahap awal pengujian. Namun, seberapa dini seseorang harus memulai pengujian? Sebaiknya Anda mulai menemukan bug saat persyaratan ditetapkan. Lebih lanjut tentang prinsip ini dalam tutorial pelatihan berikutnya.
7) Pengujian bergantung pada konteks
Pengujian bergantung pada konteks yang pada dasarnya berarti cara Anda menguji situs e-niaga akan berbeda dengan cara Anda menguji aplikasi komersial yang sudah jadi. Semua perangkat lunak yang dikembangkan tidak identik. Anda mungkin menggunakan pendekatan, metodologi, teknik, dan jenis pengujian yang berbeda bergantung pada jenis aplikasinya. Misalnya pengujian, sistem POS apa pun di toko ritel akan berbeda dengan pengujian mesin ATM.
Mitos: “Prinsip hanya untuk referensi. Saya tidak akan menggunakannya dalam latihan.”
Ini sangat tidak benar. Prinsip Tes akan membantu Anda menciptakan tes yang efektif Strategi Uji dan draf kasus uji penangkapan kesalahan.
Namun mempelajari 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. Namun seiring pengalaman, Anda hanya fokus pada mengemudi, sisanya akan terasa alami. Bahkan Anda bisa mengobrol dengan penumpang lain di dalam mobil.
Hal yang sama berlaku untuk prinsip pengujian. Penguji yang berpengalaman telah menginternalisasikan prinsip-prinsip ini ke tingkat yang dapat mereka terapkan bahkan tanpa berpikir. Oleh karena itu mitos bahwa prinsip-prinsip tersebut tidak digunakan dalam praktik tidaklah benar.