Ujian Kotak Putih
White Box Testing adalah teknik pengujian perisian di mana struktur, reka bentuk dan pengkodan perisian dalaman diuji untuk mengesahkan aliran input-output dan untuk meningkatkan reka bentuk, kegunaan dan keselamatan. Dalam pengujian kotak putih, kod dapat dilihat oleh penguji sehingga disebut juga pengujian kotak jelas, pengujian kotak terbuka, pengujian kotak lutsinar, pengujian berdasarkan kod dan pengujian kotak kaca.
Ini adalah salah satu daripada dua bahagian pendekatan Box Testing untuk pengujian perisian. Rakan sejawatnya, pengujian Blackbox, melibatkan pengujian dari perspektif jenis pengguna luaran atau pengguna akhir. Sebaliknya, pengujian kotak putih dalam kejuruteraan perisian didasarkan pada kerja dalaman aplikasi dan berkisar pada pengujian dalaman.
Istilah "WhiteBox" digunakan kerana konsep kotak tembus pandang. Kotak yang jelas atau nama WhiteBox melambangkan kemampuan untuk melihat melalui cangkang luar perisian (atau "kotak") ke dalam kerjanya. Begitu juga, "kotak hitam" dalam "Ujian Kotak Hitam" melambangkan tidak dapat melihat cara kerja dalaman perisian sehingga hanya pengalaman pengguna akhir yang dapat diuji.
Dalam tutorial ujian kotak putih ini, anda akan belajar-
- Apa itu Ujian Kotak Putih?
- Apa yang anda sahkan dalam Ujian Kotak Putih?
- Bagaimana anda melakukan Ujian Kotak Putih?
- Contoh Ujian WhiteBox
- Teknik Ujian Kotak Putih
- Jenis Ujian Kotak Putih
- Alat Ujian Kotak Putih
- Kelebihan Ujian Kotak Putih
- Kelemahan Ujian WhiteBox
Apa yang anda sahkan dalam Ujian Kotak Putih?
Ujian kotak putih melibatkan pengujian kod perisian untuk perkara berikut:
- Lubang keselamatan dalaman
- Laluan yang rosak atau kurang tersusun dalam proses pengekodan
- Aliran input tertentu melalui kod
- Hasil yang dijangkakan
- Fungsi gelung bersyarat
- Pengujian setiap pernyataan, objek, dan fungsi secara individu
Pengujian dapat dilakukan pada tahap sistem, integrasi dan unit pengembangan perisian. Salah satu tujuan asas pengujian kotak putih adalah untuk mengesahkan aliran kerja aplikasi. Ini melibatkan pengujian serangkaian input yang telah ditentukan terhadap output yang diharapkan atau yang diinginkan sehingga ketika input tertentu tidak menghasilkan output yang diharapkan, Anda telah menemui bug.
Klik di sini jika video tidak dapat diakses
Bagaimana anda melakukan Ujian Kotak Putih?
Untuk memberikan penjelasan ringkas mengenai ujian kotak putih, kami telah membahagikannya kepada dua langkah asas . Inilah yang dilakukan penguji semasa menguji aplikasi menggunakan teknik pengujian kotak putih:
LANGKAH 1) MEMAHAMI KOD SUMBER
Perkara pertama yang sering dilakukan penguji ialah mempelajari dan memahami kod sumber aplikasi. Oleh kerana pengujian kotak putih melibatkan pengujian kerja dalaman aplikasi, penguji mesti sangat berpengetahuan dalam bahasa pengaturcaraan yang digunakan dalam aplikasi yang mereka uji. Juga, orang yang menguji mesti sangat mengetahui amalan pengekodan yang selamat. Keselamatan sering menjadi salah satu objektif utama perisian pengujian. Penguji seharusnya dapat menemui masalah keselamatan dan mencegah serangan daripada penggodam dan pengguna naif yang mungkin memasukkan kod jahat ke dalam aplikasi sama ada secara sedar atau tidak.
Langkah 2) BUAT KES UJIAN DAN LAKUKAN
Langkah asas kedua untuk pengujian kotak putih melibatkan pengujian kod sumber aplikasi untuk aliran dan struktur yang betul. Salah satu caranya adalah dengan menulis lebih banyak kod untuk menguji kod sumber aplikasi. Penguji akan mengembangkan sedikit ujian untuk setiap proses atau siri proses dalam aplikasi. Kaedah ini mensyaratkan bahawa penguji mesti mempunyai pengetahuan mendalam tentang kod dan sering dilakukan oleh pembangun. Kaedah lain termasuk Ujian Manual, percubaan, dan ujian ralat dan penggunaan alat ujian seperti yang akan kami jelaskan lebih lanjut dalam artikel ini.
Contoh Ujian WhiteBox
Pertimbangkan sekeping kod berikut
Printme (int a, int b) {------------ Printme adalah fungsihasil int = a + b;Sekiranya (hasil> 0)Cetak ("Positif", hasil)LainCetak ("Negatif", hasil)} ----------- Akhir kod sumber
Matlamat pengujian WhiteBox dalam kejuruteraan perisian adalah untuk mengesahkan semua cabang keputusan, gelung, pernyataan dalam kod.
Untuk menggunakan pernyataan dalam contoh ujian kotak putih di atas, kes ujian WhiteBox akan berlaku
- A = 1, B = 1
- A = -1, B = -3
Teknik Ujian Kotak Putih
Teknik pengujian kotak putih utama adalah analisis Penutup Kod. Analisis Liputan Kod menghilangkan jurang dalam suite Kes Ujian. Ini mengenal pasti bidang program yang tidak dijalankan oleh satu set kes ujian. Setelah jurang dikenal pasti, anda membuat kes ujian untuk mengesahkan bahagian kod yang belum diuji, sehingga meningkatkan kualiti produk perisian
Terdapat alat automatik yang tersedia untuk melakukan analisis liputan Kod. Berikut adalah beberapa teknik analisis liputan yang dapat digunakan oleh penguji kotak:
Liputan Pernyataan : - Teknik ini memerlukan setiap pernyataan dalam kod yang mungkin diuji sekurang-kurangnya sekali semasa proses pengujian kejuruteraan perisian.
Cakupan Cabang - Teknik ini memeriksa setiap jalan yang mungkin (jika-lain dan gelung bersyarat lain) dari aplikasi perisian.
Selain daripada di atas, terdapat banyak jenis liputan seperti Liputan Kondisi, Liputan Pelbagai Keadaan, Liputan Jalur, Liputan Fungsi dan lain-lain. Setiap teknik mempunyai kelebihan dan percubaan tersendiri untuk menguji (menutup) semua bahagian kod perisian. Dengan menggunakan liputan Penyata dan Cabang, secara amnya anda mencapai liputan kod 80-90% yang mencukupi. Berikut adalah Teknik Ujian WhiteBox yang penting:
- Liputan Penyataan
- Liputan Keputusan
- Perlindungan Cawangan
- Perlindungan Keadaan
- Liputan Pelbagai Keadaan
- Liputan Mesin Negeri Terhingga
- Liputan Laluan
- Mengawal ujian aliran
- Ujian aliran data
Rujuk artikel ini untuk mengetahui lebih banyak maklumat https://www.guru99.com/code-coverage.html
Jenis Ujian Kotak Putih
Ujian kotak putih merangkumi beberapa jenis ujian yang digunakan untuk menilai kebolehgunaan aplikasi, sekatan kod atau pakej perisian tertentu. Terdapat disenaraikan di bawah -
-
Ujian Unit: Ini adalah jenis ujian pertama yang dilakukan pada aplikasi. Ujian Unit dilakukan pada setiap unit atau blok kod semasa ia dikembangkan. Ujian Unit pada dasarnya dilakukan oleh pengaturcara. Sebagai pembangun perisian, anda mengembangkan beberapa baris kod, satu fungsi atau satu objek dan mengujinya untuk memastikannya berfungsi sebelum meneruskan Pengujian Unit membantu mengenal pasti sebilangan besar bug, pada awal kitaran hidup pengembangan perisian. Bug yang dikenal pasti pada peringkat ini lebih murah dan senang diperbaiki.
-
Menguji Kebocoran Memori : Kebocoran memori adalah penyebab utama aplikasi berjalan lebih perlahan. Pakar QA yang berpengalaman dalam mengesan kebocoran memori adalah penting sekiranya anda mempunyai aplikasi perisian yang lambat berjalan.
Selain daripada di atas, beberapa jenis ujian adalah sebahagian daripada ujian kotak hitam dan kotak putih. Mereka disenaraikan seperti di bawah
- Ujian Penembusan Kotak Putih: Dalam ujian ini, penguji / pembangun mempunyai maklumat lengkap mengenai kod sumber aplikasi, maklumat rangkaian terperinci, alamat IP yang terlibat dan semua maklumat pelayan yang dijalankan oleh aplikasi. Tujuannya adalah untuk menyerang kod dari beberapa sudut untuk mendedahkan ancaman keselamatan
- Uji Mutasi Kotak Putih : Ujian mutasi sering digunakan untuk mencari teknik pengekodan terbaik untuk digunakan untuk mengembangkan penyelesaian perisian.
Alat Ujian Kotak Putih
Berikut adalah senarai alat ujian kotak putih teratas.
- Parasoft Jtest
- EclEmma
- NUnit
- PyUnit
- HTMLUnit
- CppUnit
Kelebihan Ujian Kotak Putih
- Pengoptimuman kod dengan mencari kesalahan tersembunyi.
- Kotak ujian kotak putih dapat automatik dengan mudah.
- Pengujian lebih teliti kerana semua laluan kod biasanya diliputi.
- Pengujian boleh dimulakan pada awal SDLC walaupun GUI tidak tersedia.
Kelemahan Ujian WhiteBox
- Ujian kotak putih boleh menjadi agak kompleks dan mahal.
- Pembangun yang biasanya menjalankan kes ujian kotak putih membencinya. Ujian kotak putih oleh pembangun tidak terperinci boleh menyebabkan kesilapan pengeluaran.
- Ujian kotak putih memerlukan sumber profesional, dengan pemahaman terperinci mengenai pengaturcaraan dan pelaksanaan.
- Ujian kotak putih memakan masa, aplikasi pengaturcaraan yang lebih besar memerlukan masa untuk menguji sepenuhnya.
Catatan Akhir:
- Ujian kotak putih boleh menjadi agak rumit. Kerumitan yang terlibat banyak berkaitan dengan aplikasi yang sedang diuji. Aplikasi kecil yang melakukan satu operasi sederhana mungkin kotak putih diuji dalam beberapa minit, sementara aplikasi pengaturcaraan yang lebih besar memerlukan hari, minggu dan bahkan lebih lama untuk diuji sepenuhnya.
- Ujian kotak putih dalam pengujian perisian harus dilakukan pada aplikasi perisian kerana ia dikembangkan setelah ditulis dan sekali lagi setelah setiap pengubahsuaian