TESTING DAN
IMPLEMENTASI
PERTEMUAN 3
METODE PENGUJIAN
SOFTWARE
BOX APPROACH
White
Box
Black
Box
WHITE BOX TESTING
Test yang didasarkan pada pola internal, struktur
kode.
Membutuhkan pengetahuan dan kemampuan
programming.
Dilakukan oleh developer karena mereka yang
CAKUPAN PERNYATAAN,
CABANG & JALUR
Suatu teknik white box testing yang
menggunakan alur logika dari program untuk membuat test case.
Alur logika suatu program dapat
FLOW GRAPH (lanjutan)
Suatu flow graph terbentuk dari:
› Nodes (titik), mewakili statement (atau sub program) yang akan ditinjau saat eksekusi program.
› Edges (anak panah), mewakili jalur alur logika program untuk menghubungkan satu satetment (atau sub
program) dengan yang lainnya.
› Branch nodes (titik cabang), titik yang mempunyai lebih dari satu anak panah keluaran
› Branch edges (anak panah cabang), anak panah yang keluar dari suatu cabang
CAKUPAN PERNYATAAN
Cakupan pernyataan berkaitan dengan
tinjauan terhadap titik (node) pada flow graph.
Cakupan 100% terjadi bilamana semua
titik dikunjungi oleh test cases.
Pada contoh flow graph dislide
sebelumnya terdapat 10 titik. Misal
suatu jalur eksekusi program melewati titik A, B, D, H, K. Berarti ada 5 titik
CAKUPAN CABANG
Cakupan cabang ditentukan dengan menilai
proporsi dari cabang keputusan yang diuji oleh
test cases.
Cakupan cabang 100% adalah bilamana tiap
cabang keputusan pada program ditinjau setidaknya minimal 1 kali.
Pada contoh flow graph dislide sebelumnya
terdapat 6 anak panah cabang. Misal jalur
ekseskusi program melewati titik-titik A, B, D, H, K, maka jalur tersebut meninjau 2 dari 6 anak
CAKUPAN JALUR
Cakupan jalur ditentukan oleh
proporsi eksekusi jalur program yang diuji oleh sekumpulan
test cases.
Cakupan jalur 100% adalah
bilamana tiap jalur pada
program dikunjungi setidaknya minimal 1 kali.
Berdasarkan contoh terdapat 4
jalur. Bila suatu eksekusi jalur pada program melalui titik A, B, D, H, K maka ekseskusi
DESAIN CAKUPAN TES
1. Analisa source code untuk membuat
flow graph
2. Identifikasi jalur tes untuk mencapai
pemenuhan tes berdasarkan flow graph.
3. Mengevaluasi kondisi tes yang akan
dicapai dalam tiap tes.
4. Memberikan nilai masukan dan
BASIS PATH TESTING
Tehnik white box testing dikenalkan oleh Tom
McCabe.
Test case designer dapat mengetahui ukuran
kompleksitas sebuah desain aplikasi.
Ukuran tersebut digunakan sebagai acuan
untuk mendefinisikan jalur eksekusi,
sehingga setiap statement dalam program dapat dicover oleh test case.
Menunjukkan jumlah minimum test case
NOTASI FLOW GRAPH
Flow graph digunakan sebagai alat
SOURCE CODE -> FLOW
GRAPH
SOURCE CODE -> FLOW
GRAPH (lanjutan)
SOURCE CODE -> FLOW
GRAPH (lanjutan)
CYCLOMATIC COMPLEXITY
Metric (Satuan Pengukuran) Perangkat
Lunak yang memberikan pengukuran
kuantitatif terhadap kompleksitas sebuah program.
Berguna untuk memprediksi modul-modul
yang berpotensi error. Sehingga dapat
digunakan untuk perencanaan dan disain testing .
Mendefinisikan jumlah jalur (path)
MENGHITUNG
CYCLOMATIC COMPLEXITY
Kompleksitas dihitung dengan menggunakan salah
satu dari cara yang ada dibawah ini:
› Jumlah region yang ada didalam flowgraph
› Cyclomatic complexity -> V(G) dirumuskan dengan V(G) = E – N + 2
Dimana:
E (Jumlah Edge dalam flowgraph) N (Jumlah Node dalam flowgraph)
› Cyclomatic complexity -> V(G) dirumuskan dengan V(G) = P + 1
Dimana:
P (Jumlah Predicate Node dalam flowgraph)
Predicate node adalah node yang memiliki kondisi (ditandai dengan 2
JALUR INDEPENDEN
(INDEPENDENT PATH)
Jalur independen (Independent path)
KORELASI CYCLOMATIC COMPLAXITY
& INDEPENDENT PATH
Dari Flow Graph diatas (Slide 14) maka nilai cyclomatic
complexity nya dapat dihitung dengan:
1. Melihat flow graph -> memiliki 4 region
2. V(G) = 11 edges – 9 nodes + 2 =4
3. V(G) = 3 predicate nodes + 1 = 4
Dari Flow Graph diatas (Slide 14) maka jalur (path)
independen yang terbentuk ada 4 yaitu:
› 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