Pengujian Negatif
Pengujian Negatif adalah jenis pengujian perangkat lunak yang digunakan untuk memeriksa aplikasi perangkat lunak untuk data dan kondisi input yang tidak terduga. Data atau kondisi yang tidak terduga dapat berupa apa saja, mulai dari tipe data yang salah hingga serangan peretasan yang kuat. Tujuan pengujian negatif adalah untuk mencegah aplikasi perangkat lunak agar tidak mogok karena masukan negatif dan meningkatkan kualitas dan stabilitas.
Dengan hanya melakukan pengujian positif kami hanya dapat memastikan sistem kami berfungsi dalam kondisi normal. Kami harus memastikan bahwa sistem kami dapat menangani kondisi yang tidak terduga untuk memastikan sistem bebas kesalahan 100%.
Dalam tutorial ini, Anda akan belajar-
- Apa itu Pengujian Negatif?
- Contoh Pengujian Negatif
- Mengapa Pengujian Negatif?
- Bagaimana melakukan Pengujian Negatif
- Keuntungan Pengujian Negatif
- Kerugian dari Pengujian Negatif
Contoh Pengujian Negatif
Pertimbangkan kasus lift yang umumnya dianggap sebagai contoh pengujian negatif.
Kita semua tahu fungsi lift. Ini akan dianggap sebagai persyaratan lift seperti menekan nomor lantai membuat lift pergi ke lantai tertentu.
Pintu terbuka secara otomatis setelah lift mencapai lantai yang ditentukan dan seterusnya.
Sekarang mari pertimbangkan beberapa skenario negatif untuk peningkatan. Beberapa dari mereka adalah,
Pengujian Negatif | Pengujian Positif |
---|---|
|
|
|
|
|
|
Semua kasus ini akan berada dalam pengujian negatif. Pentingnya ini adalah bahwa kita tidak dapat memastikan bahwa semua yang disebutkan di atas tidak akan terjadi, jadi kita membutuhkannya.
Pertimbangkan kasus kondisi kelebihan berat badan diperiksa dan pada penerapan, lift bekerja tidak normal ketika ada kondisi kelebihan berat badan. Hal ini akan berdampak potensial pada keandalan sistem dan bahkan dapat membahayakan nyawa. Ini menjelaskan apa itu pengujian negatif dan pentingnya pengujian itu.
Kasus yang sama juga diterapkan dalam perangkat lunak. Untuk pengujian negatif, kami telah menyimpang dari prosedur operasional normal. Mari kita lihat beberapa contoh.
Pertimbangkan formulir pendaftaran misalnya.
Pengujian Negatif | Pengujian Positif |
---|---|
|
|
|
|
|
|
|
|
Seperti yang kami katakan sebelumnya, kami harus memastikan dalam semua kasus negatif ini sistem kami akan berfungsi dengan baik. Pertimbangkan kasus jika seseorang mencoba memasukkan karakter di bidang angka dan sistem tidak dapat memproses data yang tidak diharapkan karena mengharapkan angka, dan akhirnya, sistem macet. Atau bagaimana jika seseorang mencoba melakukan injeksi SQL dan menghapus semua data kita dari database. Kami tidak dapat menanggung potensi kerugian seperti itu. Jadi pengujian negatif itu penting.
Mengapa Pengujian Negatif?
Karena pengujian adalah tugas yang memakan waktu dan biaya, memutuskan 'apa', 'bagaimana' dan 'seberapa banyak' yang akan diuji sangatlah penting. Kita harus memilih dengan bijak apakah kita harus melakukan pengujian negatif di sistem kita atau tidak. Jadi, mari kita lihat pentingnya pengujian negatif.
Perspektif organisasi
Merupakan tanggung jawab organisasi untuk menyediakan produk berkualitas baik kepada kliennya. Untuk mencapai ini, seseorang harus melakukan pengujian negatif.
Sebagai bagian dari konfirmasi terhadap kegagalan, organisasi harus melakukan pengujian negatif.
Mungkin kita tidak dapat membangun sistem bebas kesalahan 100%, tetapi kita harus memastikan bahwa kita telah melakukan segalanya untuk mencegah kegagalan, untuk mencapai itu kita harus melakukan pengujian negatif.
Dampaknya merupakan salah satu faktor yang harus kita pertimbangkan. Pertimbangkan kami telah melakukan pengujian positif pada situs e-commerce dan memastikan semuanya baik-baik saja. Tetapi bagaimana jika ada celah dalam sistem kami sehingga seseorang dapat melakukan injeksi SQL dan menghapus semua data kami. Itu akan menjadi pelanggaran keamanan yang hebat. Untuk menghindari jenis kasus ini, seseorang harus melakukan pengujian negatif juga.
Untuk aplikasi yang terbuka untuk umum, terutama situs web, kami harus selalu ingat bahwa kami tidak memiliki banyak kendali dalam prosedur penggunaan aplikasi, jadi kami harus melakukan pengujian negatif untuk memastikan bahwa semua kasus tersebut tercakup dan terkandung.
Hal lain yang perlu kita perhatikan adalah ada banyak peretas hitam di luar sana yang mencari peluang untuk menghancurkan sistem. Peretasan adalah kasus penting yang tercakup dalam pengujian negatif
Perspektif klien
Klien selalu mengharapkan produk tanpa kerentanan, untuk memastikan bahwa pengujian negatif adalah suatu keharusan
Jika itu adalah produk sensitif seperti e-commerce, saham online, dll., Maka keamanan dan pengujian negatif adalah suatu keharusan.
Satu-satunya perhatian klien mengenai pengujian negatif adalah biayanya. Tetapi setelah dampaknya dianalisis, terserah klien untuk memutuskan apakah akan melakukan pengujian negatif atau tidak.
Bagaimana melakukan pengujian negatif
Untuk melakukan pengujian negatif, kita harus mempertimbangkan semua kemungkinan kasus. Itu jika memungkinkan kita harus mempertimbangkannya dalam Test Case tidak peduli apakah itu bukan cara yang tepat untuk menggunakannya. Misalnya, jika kita melihat bidang email, pikirkan tentang semua masukan yang mungkin, kita dapat meletakkannya di sana selain format email yang benar. Cara yang sama ketika kita melihat opsi unggah gambar, kita harus mengujinya dengan semua file yang memungkinkan.
Saat membuat kasus uji negatif, kami harus memprioritaskan masukan jika tidak, akan ada banyak kasus yang mungkin terjadi. Misalnya, untuk bidang gambar di mana hanya file '.png.webp' yang seharusnya dimasukkan, kami dapat memiliki banyak opsi untuk mengunggah seperti 'jpeg.webp', 'xml', 'xls', dll ... Jadi kami perlu memprioritaskan opsi seperti XML dan SQL dapat memiliki pengaruh yang lebih besar dibandingkan dengan jpeg.webp dan xls sehingga kita harus menangani kasus SQL dan XML terlebih dahulu. Seperti ini, kami harus memprioritaskan kasus sebelum eksekusi untuk menghemat waktu dan biaya pengujian.
Pro dan kontra dari pengujian negatif
Seperti semua teknik pengujian lainnya, ada pro dan kontra untuk pengujian negatif terutama berdasarkan 'di mana', 'kapan' dan 'bagaimana' menggunakan. Mari kita lihat ini.
Keuntungan Pengujian Negatif
- Seperti kita ketahui pengujian negatif sangat penting untuk memastikan kualitas suatu produk. Produk berkualitas baik adalah produk tanpa kerentanan, untuk memastikan bahwa pengujian negatif sangat penting.
- Melakukan pengujian negatif memastikan bahwa semua kemungkinan kasus tercakup. Secara sengaja atau tidak sengaja ada kemungkinan kasus tes negatif akan terjadi. Jadi untuk memastikan semua kasus tercakup, kita harus melakukan pengujian negatif bersama dengan pengujian positif.
- Pengujian negatif akan membuat klien lebih percaya diri sebelum ditayangkan.
Kerugian dari Pengujian Negatif
- Dalam Rekayasa Perangkat Lunak, pengujian negatif dalam beberapa kasus menjadi pemborosan waktu dan energi. Dalam banyak kasus, pengujian negatif yang berlebihan tidak diperlukan. Misalnya, jika sebuah aplikasi dibuat untuk penggunaan satu orang, maka kita tidak perlu mempertimbangkan kasus bahwa 100 pengguna menggunakan sistem dalam satu waktu. Jadi menentukan kondisi dalam kasus uji negatif sangat penting. Akan ada saat dimana kita tidak perlu melakukan pengujian negatif pada sistem tertentu.
- Membutuhkan orang yang terampil dan berpengalaman untuk membuat kasus tes negatif.
- Bagi klien, pengujian negatif adalah hal lain yang menyebabkan penundaan rilis dan penambah biaya yang tidak perlu.
- Kesempatan bahwa tim menghabiskan lebih banyak waktu dan energi untuk pengujian negatif. Ada kemungkinan penguji menghabiskan banyak waktu dan energi dalam pengujian negatif yang menghasilkan konsentrasi yang lebih rendah dalam pengujian positif.