Assalam'muallaikum Wr.Wb
Selamat pagi gan,
Apa kabar sahabat dunia informasi, maap nih ane jarang post lagi banyak kesibukan, doain ane gan biar semua urusan lancar dan sesuai target ya gan,
Makasih atas do'anya juragan yang baik. -_-
Bismillah
Artikel kali ini akan membahas pengujian white box, sebelum lebih dalam ada apa dan apa aja yang di uji dengan white box, alangkah baiknya kita memahami pengertian dan cara logika alurnya dulu gan
Pengertian White Box Testing
White box testing adalah pengujian yang didasarkan pada pengecekan terhadap detail perancangan, menggunakan struktur kontrol dari desain program secara procedural untuk membagi pengujian ke dalam beberapa kasus pengujian. Secara sekilas dapat diambil kesimpulan white box testing merupakan petunjuk untuk mendapatkan program yang benar secara 100%.
Pengujian white box :
Control Structur Testing, meliputi;
Kalo perlu follow aja gan, pasti gak akan ketingalan :-D
Atau bisa kog minta PIN BBM ane :-D Haha
- Untuk mengetahui cara kerja suatu perangkat lunak secara internal.
- Untuk menjamin operasi-operasi internal sesuai dengan spesifikasi yang telah ditetapkan dengan menggunakan struktur kendali dari prosedur yang dirancang.
Pelaksanaan pengujian white box :
- Menjamim seluruh independent path dieksekusi paling sedikit satu kali. Independent path adalah jalur dalam program yang menunjukkan paling sedikit satu kumpulan proses ataupun kondisi baru.
- Menjalani logical decision pada sisi dan false.
- Mengeksekusi pengulangan (looping) dalam batas-batas yang ditentukan.
- Menguji struktur data internal.
Berdasarkan konsep pengujian; White box (structural) testing / glass box testing : memeriksa
kalkulasi internal path untuk mengidentifikasi kesalahan.
Langkah-langkah white box:
- Mendefinisikan semua alur logika
- Membangun kasus untuk digunakan dalam pengujian
- Melakukan pengujian.
Kelebihan White Box Testing
- Kesalahan logika. Digunakan pada sintaks ‘if’ dan pengulangan. Dimana White Box Testing akan mendeteksi kondisi-kondisi yang tidak sesuai dan mendeteksi kapan proses pengulangan akan berhenti.
- Ketidaksesuaian asumsi. Menampilkan asumsi yang tidak sesuai dengan kenyataan, untuk di analisa dan diperbaiki.
- Kesalahan ketik. Mendeteksi bahasa pemrograman yang bersifat case sensitive
Kelemahan White Box Testing
- Untuk perangkat lunak yang tergolong besar, White Box Testing dianggap sebagai strategi yang tergolong boros, karena akan melibatkan sumber daya yang besar untuk melakukannya.
Jenis white box :
<0>Basis path:: Metode identifikasi yang berdasarkan pada jalur,, struktur atau koneksi yang ada dari suatu sistem ini biasa disebut juga sebagai branch testing,, karena cabang-cabang dari kode atau fungsi logika diidentifikasi dan dites, atau disebut juga sebagai control-flow testing.
Ada 2 bentuk Basis path, yaitu:
- Zero Path: Jalur penghubung yang tidak penting atau jalur pintas yang ada pada suatu sistem.
- One Path: Jalur penghubung yang penting atau berupa proses pada suatu sistem.
<0>Cyclomatic Complexity
- Adalah pengukuran software yang memberikan pengukuran kuantitatif dari kompleksitas logika program.
- Pada konteks metode basis path testing , nilai yang dihitung bagi cyclomatic complexity menentukan jumlah jalur-jalur yang independen dalam kumpulan basis suatu program dan memberikan jumlah tes minimal yang harus dilakukan untuk memastikan bahwa semua pernyataan telah dieksekusi sekurangnya satu kali.
- Jalur independen adalah tiap jalur pada program yang memperlihatkan 1 kelompok baru dari pernyataan proses atau kondisi baru.
<0>Graph Matrix
- Adalah matrik berbentuk segi empat sama sisi, dimana jumlah baris dan kolom sama dengan jumlah node, dan identifikasi baris dan kolom sama dengan identifikasi node, serta isi data adalah keberadaan penghubung antar node (edges).
- Beberapa properti yang dapat ditambahkan sebagai pembobotan pada koneksi antar node di dalam graph matrix, sebagai berikut:
- Kemungkinan jalur (Edge) akan dilalui / dieksekusi.
- Waktu proses yang diharapkan pada jalur selama proses transfer dilakukan.
- Memori yang dibutuhkan selama proses transfer dilakukan pada jalur.
- Sumber daya (resources) yang dibutuhkan selama proses transfer dilakukan pada jalur.
Control Structur Testing, meliputi;
- Condition testing:: Suatu metode disain test case yang memeriksa kondisi logika yang terdapat pada modul program.
- Data flow testing:: Metode data flow testing memilih jalur program berdasarkan pada lokasi dari definisi dan penggunaan variabel-variabel pada program.
- Loop testing:: suatu teknik white box testing yang berfokus pada validitas konstruksi loop secara eksklusif. Ada 4 kelas dari loop, yaitu;
- Simple Loops
- Nested Loops
- Concatenated Loops
- Unstructured Loops
Rumus :
V (G) = E - N + 2
Keterangan :
E = Jumlah busur pada flow graph
N = Jumlah simpul pada flow graph
Rerensi Artikel : Klik DI Sini
Tehnik Pengujian white-box berfokus pada struktur control program. Test case dilakukan untuk memastikan bahwa semua statemen pada program telah dieksekusi paling tidak satu kali selama pengujian dan bahwa semua kondisi logis telah diuji. Pengujian basic path, tehnik pengujian white-box, menggunakan grafik (matriks grafiks) untuk melakukan serangkaian pengujian yang independent secara linear yang akan memastikan cakupan.
Pengujian aliran data dan kondisi lebih lanjut menggunakan logika program dan pengujian loop menyempurnakan tehnik white-box yang lain dengan memberikan sebuah prosedur untuk menguji loop dari tingkat kompleksitas yang bervariasi. Pengujian black-box didesain untuk mengungkap kesalahan pada persyaratan fungsional tanpa mengabaikan kerja internal dari suatu program.
Untuk Contoh White Box akan saya bahas pada artikel berikutnya :
Gambaran coding dan jalur serta cyclomatic complexity insyaAllah ane bahas dari awal - akhir gan, pantegin aja blog ane ini gan.
Contoh Flow Graph :
Gambar yang dibawah ini yang ane akan jelasin gan, simak aja terus ya hehe Kalo perlu follow aja gan, pasti gak akan ketingalan :-D
Atau bisa kog minta PIN BBM ane :-D Haha
1 comments:
Click here for commentskui cara gawe flowgraph pye
ConversionConversion EmoticonEmoticon