Laporan Makalah Pengujian White-Box
-
Upload
alvian-yudha-prawira -
Category
Documents
-
view
1.053 -
download
118
Transcript of Laporan Makalah Pengujian White-Box
-
8/18/2019 Laporan Makalah Pengujian White-Box
1/12
LAPORAN MAKALAH
Pengujian White-Box Testing
Software Quality And Testing
A11.4805
Anggota Kelompok:
Luqman Fauzi (A11.2012.07075)
Alvian Yudha P. (A11.2012.07112)
Aris Mulyasani (A11.2012.07113)
-
8/18/2019 Laporan Makalah Pengujian White-Box
2/12
A. Sample Code
Berikut adalah
sample code yang digunakan untuk melakukan pengujian dengan
metode white-box testing :
-
8/18/2019 Laporan Makalah Pengujian White-Box
3/12
B. Tujuan Penulisan Dokumen
1. Melakukan pengujian menggunakan dua metode white-box testing
, yaitu:
a. Basis Path
b. Graph Matrix
2. Dari dua metode tersebut, akan dijelaskan prosedur, hasil, dan pembahasan
terkait pengujian dari masing-masing metode.
C. Landasan Teori
a. Basis Path
Basis Path Testing adalah sebuah metode pengujian terstruktur yang
melibatkan
source code dari program untuk menemukan setiap kemungkinan
jalur/ path yang dapat dieksekusi. Sehingga untuk pengujian masing-masing path
dengan sebanyak mungkin kemungkinan yang ada untuk mencakup
masing-masing test case. Sehingga cara ini adalah pilihan terbaik untuk menggali
semua kemungkinan kesalahan di dalam kode program [2]. Pada gambar di
bawah ini merupakan diagram alur dari pengujian berbasis path testing terhadap
eksekusi sebuah program dengan kemungkinan jalur yang ada.
-
8/18/2019 Laporan Makalah Pengujian White-Box
4/12
b. Graph Matrix
Graph Matrix merupakan metode yang digunakan untuk membantu uji coba
basis path atau struktur data. Graph Matrix adalah matrik persegi empat yang
mempunyai ukuran yang sama dengan jumlah
node pada
flowgraph
. Masing-masing baris dan kolom mempunyai hubungan dengan node yang telah
ditentukan dan masukan data matrix berhubungan dengan hubungan ( edge ) antar
node
[1].
Contoh sederhana penerapan graph matric dapat digambarkan sebagai berikut :
Hubungan bobot menyediakan tambahan informasi tentang aliran kontrol.
Secara sederhana, bobot edge dapat diberi nilai 1 jika terdapat hubungan antara
node atau nilai 0 jika tidak terdapat hubungan. Dapat juga hubungan bobot diberi
tanda dengan ketentuan sebagai berikut:
1. Kemungkinan link (edge) dikerjakan
2. Waktu yang digunakan untuk proses selama traversal dari link
3. Memori yang diperlukan selama traversal link
4. Sumber daya yang diperlukan selama traversal link.
-
8/18/2019 Laporan Makalah Pengujian White-Box
5/12
D. Proses Pengujian
a. Basis Path
Proses di dalam metode basis path
meliputi beberapa langkah, sebagai berikut:
1. Membuat Control Flow Graph
Keterangan:
1. Variable declaration ((x, y, w, A, B, theta, phi, r)
2. Function start-point & values input (x, y, w, A, B)
3. Kondisi 1 (x > 0)
4. Kondisi 2 (x < 0 & y ≥ 0)
5. Kondisi 3 (x < 0 & y < 0)
6. Kondisi 4 (x = 0 & y = 0)
7. Kondisi 5 (x = 0 & y < 0)
8. Kondisi 6 (x = 0 & y > 0)
9. Eksekusi kondisi 1
10. Eksekusi kondisi 2
-
8/18/2019 Laporan Makalah Pengujian White-Box
6/12
11. Eksekusi kondisi 3
12. Eksekusi kondisi 4
13. Eksekusi kondisi 5
14. Eksekusi kondisi 615. Output hasil berdasarkan eksekusi pada kondisi (print-out nilai a & b)
16. Function end-point
2. Menentukan nilai Cyclomatic Complexity
Dari control flow graph
di atas, maka dapat dihitung nilai cyclomatic
complexity
sebagai berikut:
Model V(G) = edges
- nodes + 2(p)
= 20 - 16 + 2(1)
= 4 + 2
= 6
Maka diperoleh nilai cyclomatic complexity adalah 6
Keterangan:
- edges
: komponen yang menghubungkan masing-masing node
- node
: jumlah kondisi atau
state terhadap setiap kemungkinan alur
kerja program dalam bentuk basis path.
3. Memilih jalur basis set
Untuk menentukan jalur basis set yang dimiliki, maka diperlukan
graph
matrix
yang diperoleh dari setiap node dan keterhubungan antar
masing-masing node menggunakan
matrix persegi empat. Penjelasan dan
perhitungan bagian ini akan dijelaskan pada bagian
graph matrix.
Dari
graph
matrix
tersebut diperoleh sebanyak 6 basis set. Bagian ini dijelaskan secara
lebih rinci pada bagian ‘Graph Matrix’
4. Menghasilkan test case
Apabila sudah diperoleh jumlah dari basis set, maka langkah selanjutnya
adalah merancang
test case untuk masing-masing basis path, yaitu sejumlah
6 test case. Masing-masing test case merepresentasikan setiap basis path
-
8/18/2019 Laporan Makalah Pengujian White-Box
7/12
yang ada, dengan masing-masing kondisi / case yang berbeda. Penjelasan
terkait proses ini dijelaskan pada sub-bab ‘Hasil’.
b. Graph Matrix
Dibawah ini merupakan Graph Matrix dari proses flow graph yang diperoleh
pada proses sebelumnya. Apabila sebuah node dapat terhubung dengan node
lainnya maka matrix bernilai 1, apabila tidak dapat terhubung maka bernilai 0.
Node
Connected Node
Σ(i)1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16
1 0 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 - 1 = 0
2 0 0 1 1 1 1 1 1 0 0 0 0 0 0 0 0 6 - 1 = 5
3 0 0 0 0 0 0 0 0 1 0 0 0 0 0 0 0 1 - 1 = 0
4 0 0 0 0 0 0 0 0 0 1 0 0 0 0 0 0 1 - 1 = 0
5 0 0 0 0 0 0 0 0 0 0 1 0 0 0 0 0 1 - 1 = 0
6 0 0 0 0 0 0 0 0 0 0 0 1 0 0 0 0 1 - 1 = 0
7 0 0 0 0 0 0 0 0 0 0 0 0 1 0 0 0 1 - 1 = 0
8 0 0 0 0 0 0 0 0 0 0 0 0 0 1 0 0 1 - 1 = 0
9 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 0 1 - 1 = 0
10 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 0 1 - 1 = 0
11 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 0 1 - 1 = 0
12 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 0 1 - 1 = 0
13 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 0 1 - 1 = 0
14 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 0 1 - 1 = 0
15 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 1 - 1 = 0
16 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 - 0 = 0
JUMLAH BASIS SET ( Σ(i) + 1 ): 5 + 1 = 6
-
8/18/2019 Laporan Makalah Pengujian White-Box
8/12
Dari hasil perhitungan di atas, maka dapat dihitung jumlah basis set yang
terbentuk adalah sebanyak 6 basis set.
E. Hasil
Dari kedua metode dan proses pengujian tersebut, maka diperoleh beberapa test
case berdasarkan jumlah basis set yang didapatkan pada tahap graph matrix. Dimana
testcase ini merupakan representasi dari beberapa kemungkinan terkait eksekusi
program pada beberapa kondisi / case.
Paths Nodes Test Cases
Path 1 1 - 2 - 3 - 9 - 15 - 16 Jika node 3 bernilai benar ( x < 0 → TRUE )
Path 2 1 - 2 - 4 - 10 - 15 - 16 Jika node 4: bernilai benar ( x < 0 AND y ≥ 0 → TRUE )
Path 3 1 - 2 - 5 - 11 - 15 - 16 Jika node 5: bernilai benar ( x < 0 AND y < 0 → TRUE )
Path 4 1 - 2 - 6 - 12 - 15 - 16 Jika node 6: bernilai benar ( x = 0 AND y = 0 → TRUE )
Path 5 1 - 2 - 7 - 13 - 15 - 16 Jika node 7: bernilai benar ( x = 0 AND y < 0 → TRUE )
Path 6 1 - 2 - 8 - 14 - 15 - 16 Jika node 8: bernilai benar( x = 0 AND y > 0 → TRUE )
Paths Flow Graph
Path 1
Path 2
-
8/18/2019 Laporan Makalah Pengujian White-Box
9/12
Path 3
Path 4
Path 5
Path 6
Pada tabel di atas merupakan hasil test case yang didapatkan dari proses basis
path
dan
graph matrix. Masing-masing test case memiliki kondisi / case yang
berbeda-beda. Dan dapat digunakan di dalam pengujian eksekusi program dalam
realitanya.
-
8/18/2019 Laporan Makalah Pengujian White-Box
10/12
F. Pembahasan
Dari hasil pengujian di atas diperoleh 6 test case, dimana masing-masing test
case merepresentasikan masing-masing kondisi yang mungkin terjadi pada eksekusi
program yang ada. Pada masing-masing test case menguji pada nilai input yang
memenuhi kondisi (bernilai TRUE), karena apabila suatu kondisi tidak terpenuhi
maka akan berlaih pada kondisi yang lainnya. Sehingga dari pengujian tersebut tidak
mungkin apabila nilai input yang ada tidak memenuhi kondisi, karena masing-masing
kondisi sudah mencover setiap kemungkinan yang ada berdasarkan nilai masukan
program. Kemudian komputasi di dalam masing-masing kondisi dilakukan
sedemikian rupa sesuai apa yang terdeklarasi di dalam setiap blok kondisi.
Berdasarkan hasil komputasi tersebut diperoleh nilai a dan nilai b, hingga akhirnya
dieksekusi pada bagian akhir function dieksekusi (mencetak /
print-out nilai a dan
nilai b).
G. Kesimpulan
Pengujian perangkat lunak pada
white-box
menggunakan metode
basis path
dan graph matrix memiliki tujuan untuk menghasilkan test case yang kemudian dapat
digunakan sebagai acuan dalam menguji sebuah program, baik dari segi alur, logika,
atau algoritma. Sehingga dari pengujian tersebut dapat dihasilkan program yang dapat
divalidasi kualitasnya, sehingga implementasinya pada perangkat lunak juga
menghasilkan produk perangkat lunak yang teruji dan mudah dirawat secara jangka
panjang.
-
8/18/2019 Laporan Makalah Pengujian White-Box
11/12
Daftar Pustaka
[1] Khan, M.E., “Different Approaches To White Box Testing Technique for Finding
Errors”, International Journal of Software Engineering and Its Applications, Vol. 5, No.
3, July, 2011.
[2] Schlingloff, H. and Roggenbach M., “Path Testing”, Luke Gregory, 2010.
-
8/18/2019 Laporan Makalah Pengujian White-Box
12/12
Kontribusi
1. Luqman Fauzi
Merancang logika
control flow graph terhadap source code yang ada, membuat matrix
diagram, membuat test case
berdasarkan matrix graph yang dibuat.
2. Alvian Yudha P.
Membuat gambar image
control flow graph,
mengumpulkan dan menulis landasan teori
( graph matrix), merapikan struktur penulisan laporan.
3. Aris Mulyasani
Membuat gambar image control flow graph,
merancang matrix diagram, mengumpulkan dan
menulis landasan teori ( basis path ).