pertemuan 5 : pengujian white box...pertemuan 5 : pengujianwhite box pengujian software dan sistem...

35
Pertemuan 5 : Pengujian White Box Pengujian Software dan Sistem UPB 2020 M Najamuddin Dwi Miharja, S.Kom, M.Kom Teknik Informatika Fakultas Teknik Universitas Pelita Bangsa

Upload: others

Post on 17-Nov-2020

19 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: Pertemuan 5 : Pengujian White Box...Pertemuan 5 : PengujianWhite Box Pengujian Software dan Sistem UPB 2020 M Najamuddin Dwi Miharja, S.Kom, M.Kom Teknik Informatika Fakultas Teknik

Pertemuan 5 : PengujianWhite Box

Pengujian Software dan Sistem UPB 2020

M Najamuddin Dwi Miharja, S.Kom, M.Kom

Teknik Informatika

Fakultas Teknik

Universitas Pelita Bangsa

Page 2: Pertemuan 5 : Pengujian White Box...Pertemuan 5 : PengujianWhite Box Pengujian Software dan Sistem UPB 2020 M Najamuddin Dwi Miharja, S.Kom, M.Kom Teknik Informatika Fakultas Teknik

Pengujian White-Box

Pengujian white box adalah metode desain test case yang menggunakan struktur kontrol desain prosedural untuk memperolehtest case

Pengujian White Box didasarkan pada pengamatan yang telititerhadap detail prosedural dan jalur-jalur logikanya. Pengujiandilakukan dengan memberikan test case untuk menguji serangkaiankondisi.

Page 3: Pertemuan 5 : Pengujian White Box...Pertemuan 5 : PengujianWhite Box Pengujian Software dan Sistem UPB 2020 M Najamuddin Dwi Miharja, S.Kom, M.Kom Teknik Informatika Fakultas Teknik

Pengujian White-BoxHasil dari penggunaan pengujian White-box adalah menghasilkan

test case yang:

1. Memberikan jaminan bahwa semua jalur independen pada suatu modultelah digunakan paling tidak satu kali

2. Menggunakan semua keputusan logis pada sisi true dan false

3. Mengeksekusi semua loop pada batasannya dan batas operasionalnya

4. Menggunakan struktur data internal untuk menjamin validitasnya.

Page 4: Pertemuan 5 : Pengujian White Box...Pertemuan 5 : PengujianWhite Box Pengujian Software dan Sistem UPB 2020 M Najamuddin Dwi Miharja, S.Kom, M.Kom Teknik Informatika Fakultas Teknik

Pengujian White-Box

Yang diperlukan dalam White-box adalah

- Menentukan semua jalur logika

- Mengembangkan test case untuk mengujinya

- Mengevaluasi hasil dengan memunculkan test case untukmenguji logika program secara mendalam

Page 5: Pertemuan 5 : Pengujian White Box...Pertemuan 5 : PengujianWhite Box Pengujian Software dan Sistem UPB 2020 M Najamuddin Dwi Miharja, S.Kom, M.Kom Teknik Informatika Fakultas Teknik

Pengujian White-Box

• Mengapa kita harus menghabiskan waktu dan energi untukmelakukan pengujian white-box, bila ada pengujian black-box?

• Hal ini dikarenakan didalam perangkat lunak memiliki sifatcacat.

Page 6: Pertemuan 5 : Pengujian White Box...Pertemuan 5 : PengujianWhite Box Pengujian Software dan Sistem UPB 2020 M Najamuddin Dwi Miharja, S.Kom, M.Kom Teknik Informatika Fakultas Teknik

Pengujian White-Box• Cacat pada perangkat lunak adalah sbb:

Kesalahan logis dan asumsi yang tidak benar berbanding terbalik denganprobabilitas jalur program yg akan dieksekusi

Kita sering percaya bahwa logis mungkin tidak akan dieksekusi bila padakenyataannya akan dieksekusi pada basis regular

Kesalahan tipografis adalah random

Page 7: Pertemuan 5 : Pengujian White Box...Pertemuan 5 : PengujianWhite Box Pengujian Software dan Sistem UPB 2020 M Najamuddin Dwi Miharja, S.Kom, M.Kom Teknik Informatika Fakultas Teknik

White Box Testing

• Structural Testing or Logic-driven Testing or Glass BoxTesting

• Yang dibutuhkan > Source code

• Menguji lebih “dekat” tentang detail prosedur perangkatlunak.

• Yang diselidiki: logical path (jalur logika) perangkatlunak

Page 8: Pertemuan 5 : Pengujian White Box...Pertemuan 5 : PengujianWhite Box Pengujian Software dan Sistem UPB 2020 M Najamuddin Dwi Miharja, S.Kom, M.Kom Teknik Informatika Fakultas Teknik

Mengapa “Source code”?

• Dengan source code, dapat dilakukan pengujiantentang:– Structural Testing process– Program Logic-driven Testing– Design-based Testing– Examines the internal structure of program

Page 9: Pertemuan 5 : Pengujian White Box...Pertemuan 5 : PengujianWhite Box Pengujian Software dan Sistem UPB 2020 M Najamuddin Dwi Miharja, S.Kom, M.Kom Teknik Informatika Fakultas Teknik

Jalur Logika

Page 10: Pertemuan 5 : Pengujian White Box...Pertemuan 5 : PengujianWhite Box Pengujian Software dan Sistem UPB 2020 M Najamuddin Dwi Miharja, S.Kom, M.Kom Teknik Informatika Fakultas Teknik

Contoh Test Case

Page 11: Pertemuan 5 : Pengujian White Box...Pertemuan 5 : PengujianWhite Box Pengujian Software dan Sistem UPB 2020 M Najamuddin Dwi Miharja, S.Kom, M.Kom Teknik Informatika Fakultas Teknik

Keuntungan White Box• Menghasilkan program yang benar dan sempurna 100%,karena

• Mengerjakan seluruh keputusan logika

• Mengerjakan seluruh loop (sesuai batas)

• Menjamin seluruh jalur independen dalam modul dikerjakan minimal 1x

• Mengerjakan seluruh data internal yang menjamin validitas

• Syarat:–Mendefinisikan semua logical path–Membangun kasus untuk pengujian–Mengevaluasi hasilnya–Menguji secara menyeluruh

Page 12: Pertemuan 5 : Pengujian White Box...Pertemuan 5 : PengujianWhite Box Pengujian Software dan Sistem UPB 2020 M Najamuddin Dwi Miharja, S.Kom, M.Kom Teknik Informatika Fakultas Teknik

Kekurangan

• Pengujian secara menyeluruh justru menimbulkan masalah sumber daya

• Program yang kecil bisa menghasilkan banyak sekali jalur logika, contoh:

Page 13: Pertemuan 5 : Pengujian White Box...Pertemuan 5 : PengujianWhite Box Pengujian Software dan Sistem UPB 2020 M Najamuddin Dwi Miharja, S.Kom, M.Kom Teknik Informatika Fakultas Teknik
Page 14: Pertemuan 5 : Pengujian White Box...Pertemuan 5 : PengujianWhite Box Pengujian Software dan Sistem UPB 2020 M Najamuddin Dwi Miharja, S.Kom, M.Kom Teknik Informatika Fakultas Teknik

Masih “Kekurangan”

• Setiap jalur harus diuji secara “manual” untuk dibuktikankebenarannya.

• Manual:– Menulis– Mengeksekusi– Memverifikasi hasil

• 1 jalur logika = 1 kegiatan manual

• Jika 1 manual dilakukan selama 5 menit, Berapa lama waktu yang diperlukan untuk pengujian?

Page 15: Pertemuan 5 : Pengujian White Box...Pertemuan 5 : PengujianWhite Box Pengujian Software dan Sistem UPB 2020 M Najamuddin Dwi Miharja, S.Kom, M.Kom Teknik Informatika Fakultas Teknik

“Bukankah black box testing jauh lebih cepat dan lebih mungkin

dilakukan?”

• Jawaban terletak pada ketidak-sempurnaan perangkatlunak:

– Adanya kesalahan logika (logic errors)65 < x <=75 > if (x < 65) AND (x <= 75) then…

–Adanya ketidaksesuasian asumsi (incorrect assumptions)1 bulan = 30 hari >bulan Februari? Juli? dst…

– Adanya kesalahan menulis kode (typographical errors)volume:= P * L * T; > polume:=P * L * T;..

Page 16: Pertemuan 5 : Pengujian White Box...Pertemuan 5 : PengujianWhite Box Pengujian Software dan Sistem UPB 2020 M Najamuddin Dwi Miharja, S.Kom, M.Kom Teknik Informatika Fakultas Teknik

Mungkinkah dilakukan pengujian White Box?

• Ya!

• Tidak dilakukan secara menyeluruh.

• Cukup dilakukan pada jalur logika yang penting.

• Kombinasikan dengan black box testing.

Page 17: Pertemuan 5 : Pengujian White Box...Pertemuan 5 : PengujianWhite Box Pengujian Software dan Sistem UPB 2020 M Najamuddin Dwi Miharja, S.Kom, M.Kom Teknik Informatika Fakultas Teknik

Metode White Box | Basis path testing

• Diusulkan oleh Tom McCabe pada tahun 1976

• Digunakan untuk mendapatkan ukuran kompleksitaslogika

• Ukuran ini dijadikan sebagai panduan untuk menentukan jalur-jalur utama untuk dieksekusi.

Page 18: Pertemuan 5 : Pengujian White Box...Pertemuan 5 : PengujianWhite Box Pengujian Software dan Sistem UPB 2020 M Najamuddin Dwi Miharja, S.Kom, M.Kom Teknik Informatika Fakultas Teknik

Notasi

Sequence

IF

While

UntilCase

Page 19: Pertemuan 5 : Pengujian White Box...Pertemuan 5 : PengujianWhite Box Pengujian Software dan Sistem UPB 2020 M Najamuddin Dwi Miharja, S.Kom, M.Kom Teknik Informatika Fakultas Teknik

Regions

Page 20: Pertemuan 5 : Pengujian White Box...Pertemuan 5 : PengujianWhite Box Pengujian Software dan Sistem UPB 2020 M Najamuddin Dwi Miharja, S.Kom, M.Kom Teknik Informatika Fakultas Teknik

Compound Conditions

Page 21: Pertemuan 5 : Pengujian White Box...Pertemuan 5 : PengujianWhite Box Pengujian Software dan Sistem UPB 2020 M Najamuddin Dwi Miharja, S.Kom, M.Kom Teknik Informatika Fakultas Teknik

Independent Path

Page 22: Pertemuan 5 : Pengujian White Box...Pertemuan 5 : PengujianWhite Box Pengujian Software dan Sistem UPB 2020 M Najamuddin Dwi Miharja, S.Kom, M.Kom Teknik Informatika Fakultas Teknik

Cyclomatic Complexity

•Untuk menentukan banyaknya independent path yang merupakan basis path• Rumus:V(G) = E – N + 2 V(G) = P + 1dimana:E : Edge N : NodeP : Predicate node

Page 23: Pertemuan 5 : Pengujian White Box...Pertemuan 5 : PengujianWhite Box Pengujian Software dan Sistem UPB 2020 M Najamuddin Dwi Miharja, S.Kom, M.Kom Teknik Informatika Fakultas Teknik

74

Tentukan independen path?

Contoh:

Page 24: Pertemuan 5 : Pengujian White Box...Pertemuan 5 : PengujianWhite Box Pengujian Software dan Sistem UPB 2020 M Najamuddin Dwi Miharja, S.Kom, M.Kom Teknik Informatika Fakultas Teknik

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 diagramalir.

75

Jawab :

Page 25: Pertemuan 5 : Pengujian White Box...Pertemuan 5 : PengujianWhite Box Pengujian Software dan Sistem UPB 2020 M Najamuddin Dwi Miharja, S.Kom, M.Kom Teknik Informatika Fakultas Teknik

cyclomatic complexity

• Flowgraph mempunyai 4 region

• V(G) = 11 edge - 9 node + 2 = 4

• V(G) = 3 predicate node + 1 = 4

• Jadi cyclomatic complexity untuk flowgraph adalah 4

76

Page 26: Pertemuan 5 : Pengujian White Box...Pertemuan 5 : PengujianWhite Box Pengujian Software dan Sistem UPB 2020 M Najamuddin Dwi Miharja, S.Kom, M.Kom Teknik Informatika Fakultas Teknik

Contoh pengujian WhiteBoX

80

Page 27: Pertemuan 5 : Pengujian White Box...Pertemuan 5 : PengujianWhite Box Pengujian Software dan Sistem UPB 2020 M Najamuddin Dwi Miharja, S.Kom, M.Kom Teknik Informatika Fakultas Teknik

Contoh pengujian White Box

81

Page 28: Pertemuan 5 : Pengujian White Box...Pertemuan 5 : PengujianWhite Box Pengujian Software dan Sistem UPB 2020 M Najamuddin Dwi Miharja, S.Kom, M.Kom Teknik Informatika Fakultas Teknik

Contoh pengujian White Box

82

Page 29: Pertemuan 5 : Pengujian White Box...Pertemuan 5 : PengujianWhite Box Pengujian Software dan Sistem UPB 2020 M Najamuddin Dwi Miharja, S.Kom, M.Kom Teknik Informatika Fakultas Teknik

Contoh pengujian White Box

83

Page 30: Pertemuan 5 : Pengujian White Box...Pertemuan 5 : PengujianWhite Box Pengujian Software dan Sistem UPB 2020 M Najamuddin Dwi Miharja, S.Kom, M.Kom Teknik Informatika Fakultas Teknik

Contoh pengujian White Box

84

Page 31: Pertemuan 5 : Pengujian White Box...Pertemuan 5 : PengujianWhite Box Pengujian Software dan Sistem UPB 2020 M Najamuddin Dwi Miharja, S.Kom, M.Kom Teknik Informatika Fakultas Teknik

Contoh pengujian White Box

85

Page 32: Pertemuan 5 : Pengujian White Box...Pertemuan 5 : PengujianWhite Box Pengujian Software dan Sistem UPB 2020 M Najamuddin Dwi Miharja, S.Kom, M.Kom Teknik Informatika Fakultas Teknik

Contoh pengujian White Box

86

Page 33: Pertemuan 5 : Pengujian White Box...Pertemuan 5 : PengujianWhite Box Pengujian Software dan Sistem UPB 2020 M Najamuddin Dwi Miharja, S.Kom, M.Kom Teknik Informatika Fakultas Teknik

Contoh pengujian White Box

87

Page 34: Pertemuan 5 : Pengujian White Box...Pertemuan 5 : PengujianWhite Box Pengujian Software dan Sistem UPB 2020 M Najamuddin Dwi Miharja, S.Kom, M.Kom Teknik Informatika Fakultas Teknik

Tugas

87

Page 35: Pertemuan 5 : Pengujian White Box...Pertemuan 5 : PengujianWhite Box Pengujian Software dan Sistem UPB 2020 M Najamuddin Dwi Miharja, S.Kom, M.Kom Teknik Informatika Fakultas Teknik

TerimakasihM Najamuddin Dwi Miharja, S.Kom, M.Kom

085730304025 – [email protected]