White Box Testing
White Box Testing
1. Pengertian
Merupakan metode perancangan test case yang menggunakan struktur kontrol
dari perancangan prosedural untuk mendapatkan test case.
Dengan menggunakan metode white box, analis sistem akan dapat memperoleh
test case yang:
Menjamin seluruh independent path di dalam modul yang dikerjakan sekurangkurangnya sekali
Mengerjakan seluruh keputusan logikal
Mengerjakan seluruh loop yang sesuai dengan batasannya
Mengerjakan seluruh struktur data internal yang menjamin validitas
Langkah-langkah white box:
4. Jenis
a) Notasi Diagram alir
digunakan untuk menggambarkan jalur eksekusi adalah notasi diagram alir
(atau grafik program), yang menggunakan notasi lingkaran (simpul atau node)
dan anak panah (link atau edge). Notasi ini menggambarkan aliran control logika
yang digunakan dalam suatu bahasa pemrograman.
Tabel 1. Notasi Diagram Alir
graph node, merepresentasikan satu atau lebih perintah prosedural. Urutan dari
kotak simbol proses dan belah ketupat simbol keputusan dapat digambarkan
menjadi sebuah node, sedangkan anak panah disebut edges, menggambarkan
aliran dari kontrol sesuai dengan diagram alir.
Sebuah edge harus berakhir pada sebuah node walaupun tidak semua node
merepresentasikan perintah prosedural. Area yang dibatasi oleh edge dan node
disebut region, area diluar graph juga dihitung sebagai region.
Setiap representasi rancangan prosedural dapat diterjemahkan kedalam flow
graph. Gambar (a) dibawah ini merupakan bagian dari PDL (Program Design
Language) dan flow graph-nya (perhatikan nomor untuk setiap perintahnya).
Contoh yang kedua mengenai penggambaran flow chart dan flow graf:
b) Cyclomatic Complexity
adalah metrik software yang menyediakan ukuran kuantitatif dari
ekompleksan logikal program. Apabila digunakan dalam konteks metode uji
coba basis path, nilai yang dihitung untuk cyclomatic complexity menentukan
jumlah jalur independen dalam basis set suatu program dan memberi batas atas
untuk jumlah uji coba yang harus dikerjakan untuk menjamin bahwa seluruh
perintah sekurang-kurangnya telah dikerjakan sekali.
Jalur independent adalah jalur yang melintasi atau melalui program dimana
sekurang-kurangnya terdapat proses perintah yang baru atau kondisi yang baru.
Dari gambar:
Path 1 = 1 - 11
Path 2 = 1 - 2 - 3 - 4 - 5 - 10 - 1 - 11
Path 3 = 1 - 2 - 3 - 6 - 8 - 9 ...: 10 - 1 - 11
Path 4 = 1 - 2 - 3 - 6 - 7 - 9 - 10 - 1 - 11
Path 1,2,3,4 yang telah didefinisikan diatas merupakan basis set untuk diagram
alir.
Cyclomatic complexity digunakan untuk mencari jumlah path dalam satu
flowgraph. Dapat dipergunakan rumusan sebagai berikut :
1. Jumlah region grafik alir sesuai dengan cyclomatic complexity.
2. Cyclomatix complexity V(G) untuk grafik alir dihitung dengan rumus:
V(G) = E - N + 2
Dimana:
E = jumlah edge pada grafik alir
N = jumlah node pada grafik alir
3. Cyclomatix complexity V(G) juga dapat dihitung dengan rumus:
V(G) = P + 1
Dimana P = jumlah predicate node pada grafik alir
Pada Gambar dapat dihitung cyclomatic complexity:
1. Flowgraph mempunyai 4 region
2. V(G) = 11 edge - 9 node + 2 = 4
3. V(G) = 3 predicate node + 1 = 4
Jadi cyclomatic complexity untuk flowgraph adalah 4
5. Contoh
Menurut kebutuhan segitiga diberikan di bawah ini untuk menyelesaikan proses
dan menyelesaikan tes:
1) masukan kondisi:
1, kondisi 1: a + b c
2, kondisi 2: a + c b
3, kondisi 3: b + c a
4, kondisi 04:00
5, kondisi 5-0
6, 7 kondisi 6-0, kondisi 7: a == b
8, kondisi 8: a == c
9, kondisi 9: b == c
10, kondisi 10: a2 + b2 c2 ==
11, kondisi 11: a2 + b2 c2 ==
12, kondisi 12: c2 + a2 == b2
2) output:
1, tidak dapat terbentuk segitiga
2, sebuah segitiga sama sisi
3, segitiga sama kaki
4, segi tiga siku-siku
5, segitiga umum
6, beberapa pihak tidak memenuhi pembatasan
1. properti biaya $ 100, telah memiliki $ 200 (kelas kesetaraan memiliki cukup
uang)
2. properti biaya $ 100, memiliki $ 50 (kelas kesetaraan, tidak punya cukup uang)
3. properti biaya $ 100, $ 100 maka (nilai batas)