Anda di halaman 1dari 8

Pengujian White Box pada Program Monitoring Suhu dan Kelembaban

Udara Menggunakan Teknik Basis Path

Andhika Muhammad Nugroho1, Ricco Juliyanto Wibowo2, Evan Varian Islamey3, Hanifa
Nurnisa4, Dimas Yogi Sugara5, Aries Saifudin6
Teknik Informatika, Universitas Pamulang, Tangerang Selatan, Indonesia
E-mail: 1andhikamuhammadnugroho@gmail.com, 2riccounpam03@gmail.com,
3
evanvarian.11@gmail.com, 4viirlenisa@gmail.com, 5dimasyogisugara@gmail.com,
6
aries.saifudin@unpam.ac.id

Abstract

In making a program, problems can occur due to someone's carelessness. To ensure the program is
safe from problems that can occur such as, the program does not function properly, errors in the output
and other problems, the program needs to be tested first. In testing a program there are two kinds of
methods that can be used, namely black box and white box. The black box method of the program being
tested is the output of the buttons that have been made on the interface of a program, whether it can run
with what has been ordered or no. And in the white box method, the test is carried out on the source code
that has been made, which is taking into account the complexity of the program. White box method can be
used on programs that do not have a lot of output because it does not require a long time in testing. From
the test will get the results in the form of a flow from the course of a program and whether the flow is in
accordance with what is expected in making the program.

Abstrak

Dalam pembuatan sebuah program, masalah dapat terjadi dikarenakan kecerobohan seseorang.
Untuk memastikan program tersebut aman dari masalah-masalah yang dapat terjadi seperti, program tidak
berfungsi dengan semestinya, kesalahan dalam output (keluaran) dan masalah lainnya program tersebut
perlu diuji coba terlebih dahulu. Dalam uji coba sebuah program ada dua macam metode yang dapat
digunakan yaitu black box dan white box, pada metode black box program yang diuji adalah output atau
keluaran dari tombol-tombol yang telah dibuat pada interface sebuah program apakah dapat berjalan dengan
apa yang telah diperintahkan atau tidak. Dan dalam metode white box, uji coba dilakukan pada source code
yang telah dibuat, yaitu dengan memperhitungkan kompleksitas program tersebut. Metode white box dapat
digunakan pada program yang tidak memiliki banyak output karena tidak memerlukan waktu lama dalam
pengujiannya. Dari pengujian tersebut akan didapatkan hasil berupa alur dari jalannya sebuah program dan
apakah alur tersebut sesuai dengan apa yang diharapkan dalam pembuatan program tersebut.

Kata Kunci: white box, basis path, monitoring.

1 Pendahuluan

Pengujian perangkat lunak adalah elemen kritis dari jaminan kualitas perangkat lunak dan
merepresentasikan kajian pokok dari spesifikasi, desain dan pengkodean. Pengujian
merepresentasikan ketidak normalan yang terjadi pada pengembangan perangkat lunak. Selama
definisi awal dari fase pembangunan, pengembangan berusaha untuk membangun perangkat lunak
dari konsep yang abstrak sampai dengan implementasi. Pentingnya pengujian perangkat lunak dan
implikasinya yang mengacu pada kualitas perangkat lunak tidak dapat terlalu ditekan karena
melibatkan sederetan aktivitas produksi di mana peluang terjadinya kesalahan manusia sangat besar
dan arena ketidakmampuan manusia untuk melakukan dan berkomunikasi dengan sempurna maka
pengembangan perangkat lunak diiringi dengan aktivitas jaminan kualitas [1].
Program yang akan di uji pada pengujian ini adalah sebuah program yang digunakan sebagai
pemantauan (monitoring) suhu dan kelembaban udara pada sebuah ruangan. Alur kerja dari program
ini ialah mengambil data yang masuk ke dalam sensor lalu mengupload data tersebut pada sebuah
website yang nantinya didalam website tersebut akan didapatkan sebuah data untuk memantau suhu
dan kelembaban udara sebuah ruangan. Selain itu pada program yang dibuat ada beberapa ketentuan-
ketentuan yang harus dipenuhi seperti, jika suhu dan kelembaban telah melebihi batas yang
ditentukan kipas yang terhubung akan menyala dan jika suhu dan kelembaban kurang dari batas yang
telah ditentukan lampu yang terhubung akan menyala.
Pengujian white box memiliki beberapa teknik dan salah satu diantaranya adalah teknik basis
path testing dan teknik inilah yang akan penulis gunakan dalam pengujian program monitoring suhu
dan kelembaban udara. Didalam jurnalnya Handy & Joko Susilo (2014) mengatakan bahwa, “Basis
path testing adalah teknik white box testing yang pertama dikemukakan oleh Tom McCabe. Metode
basis path memungkinkan perancang test case untuk membuat pengukuran kompleksitas logikal dari
rancangan prosedural dan menggunakan pengukuran ini sebagai panduan untuk mendefinisikan
himpunan basis dari jalur eksekusi. Test case yang dibuat untuk menguji himpunan basis dijamin
akan mengeksekusi setiap statement di dalam program sekurangnya sekali pada saat pengujian.” [2]
Dalam basis path testing, ada beberapa tahapan yang harus dilalui untuk menyelesaikan
pengujiannya. Tahap pertama yaitu tahap flow graph notation, pada tahapan ini source code program
akan digambarkan didalam sebuah grafik. Lalu, setelah grafik dibuat, dilakukan perhitungan edge
dan node yang ada pada flow graph notation, jumlah edge dan node yang di dapat di masukan
kedalam rumus cyclomatic complexity untuk mencari kompleksitas dari program tersebut. Lalu,
dilakukan pengujian pada source code untuk memenuhi ketentuan yang telah ditetapkan pada tahap
test cases. Dan pada tahap terakhir dilakukan pembuatan graph matric untuk mendapatkan
connection metric.

2 Metodologi

a. Metode Penelitian
Metode penelitian yang akan digunakan dalam penelitian ini adalah pengimplementasian
dengan melakukan proses percobaan pada program monitoring suhu dan kelembaban udara yaitu
dengan menguji source code yang diambil dari program tersebut dengan menggunakan metode 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 kedalam beberapa kasus pengujian. White box testing berfokus pada structure 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 basis path, teknik pengujian white box, menggunakan grafik (matriks grafiks) untuk
melakukan serangkaian pengujian yang independent secara linear yang akan memastikan cakupan.
White box testing disebut juga pengujian glass-box. Pada dasarnya white box testing, sistem
diperlukan dalam membangun ataupun menganasila sebuah sistem apakah sudah berjalan sebagai
mana mestinya atau tidak. Hal ini perlu dilakukan mengingat white box testing merupakan
pengecekan sistem secara lebih detail dan kompleks ketimbang sistem black box testing, dalam white
box testing, sistem tidak hanya di cek dari fungsional luarnya saja "interface" melainkan juga dari
berbagai aspek sistem, termasuk diagram alur sistem dan berbagai komponent lainnya yang ada
dalam sistem. 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.[1]
b. Alur Penelitian
Untuk mendapatkan bukti yang dapat dibuktikan kebenarannya, tahapan-tahapan dalam
penelitian diperlukan. Sebagaimana yang telah dijelaskan pada paragraph pertama bab metodologi
bagian metode penelitian, mencakup beberapa proses dengan mengumpulkan literatur terkait untuk
memberikan pemahaman terkait dengan lebih jelas. Gambar 1 dapat memberikan penjelasan yang
lebih baik tentang alur penelitian ini.

Studi Literatur

Contoh Program

White Box Testing

Pembuktian

Kesimpulan
Gambar 1. Alur Penelitian

3 Hasil dan Pembahasan


Pada bab ini akan menjelaskan tetang penggunaan white box testing dan basis path testing. White
box testing pengujian internal logic dan struktur dari kode tersebut [4]. Teknik yang digunakan dalam white
box testing ini adalah teknik basis path testing. Basis bath testing adalah sebuah teknik pengujian yang
diusulkan oleh McCabe yang memungkinkan test case designer untuk menguji logic complexity dari desain
prosedural [3]. Dalam teknik basis path testing ada beberapa pendekatan yang harus dilakukan diantaranya,
flow graph notation, cyclomatic complexity dan graph matric.

3.1 Flow Graph Notation


Flow graph notation adalah strategi pengujian terstruktur menggunakan path control sebagai
modelnya, memiliki pendekatan sederhana dengan kompleksitas jalurnya. Control flow testing dapat
digunakan terhadap semua software (perangkat lunak) dan sangat efektif untuk menguji sebuah software.
Pengujian ini adalah pengujian paling utama dalam white box testing. Control flow juga disebut dengan
flow graph digunakan untuk mengilustrasikan control structure dari program tersebut. Perlu diketahui
lingkaran-lingkaran yang ada pada flow graph disebut dengan node dan tanda panah yang ada pada flow
graph disebut dengan edge.[3] Gambar 2 dapat menunjukan lebih jelas untuk menggambarkan pembuatan
flow graph sebuah program.
Gambar 2. Bentuk penggambaran flow graph

3.2 Cyclomatic Complexity


Cyclomatic Complexity adalah matrik dari sebuah program yang memberikan penilaian kuantitatif
dari kompleksitas logika. Jika digunakan pada basis path testing, teknik ini mendifinisikan jumlah jalur
independen dalam sebuah dasar program yang memberikan nilai yang tinggi untuk memastikan cakupan
sebuah program.[3] Dalam menghitung cyclomatic complexity dapat digunakan rumus V(G)=E-N+2, E
yang berarti edge dan N yang berarti node.

3.3 Graph Matric


Graph matric adalah matriks dua dimensi yang sangat berguna dalam membantu menentukan set
dasar, mempunyai banyak kolom dan jalur yang sama dengan node yang ada didalam flow graph. Sebuah
huruf diberikan pada setiap node untuk membedakan satu sama lainnya. Dan setiap edge dilengkapi dengan
nilai 0 ataupun 1, nilai 0 diberikan jika tidak ada koneksi dan nilai 1 diberikan jika ada koneksi.[3]

3.4 Pengujian
Dari tinjauan sebelumnya, pada bagian ini akan dilakukan pengujian terhadap program monitoring
suhu dan kelembaban udara. Source code diuji menggunakan teknik basis path dengan cyclomatic
complexity dan graph matric.

3.4.1 Penggambaran Flow Graph


Pada bagian ini, source code yang telah disediakan perlu diubah menjadi flow graph agar padat
dilakukan proses selanjutnya.
Gambar 3. Source Code
Dari source code yang terdapat pada gambar 3 didapatkan flow graph seperti yang ditunjukan pada
gambar 4.
Gambar 4. Flow Graph

3.4.2 Pengujian Cyclomatic Complexity


Setelah flow graph dibuat, selanjutnya adalah perhitungan cyclomatic complexity untuk mendapatkan
banyaknya jalur yang dapat dilalui oleh program tersebut. Berikut cara untuk menghitung cyclomatic
complexity dari flow graph diatas:
Diketahui jumlah node yang ada adalah 14 dan jumlah edge yang ada adalah 18. Dengan rumus yang telah
dijelaskan sebelumnya didapatkan:
V(G) = E – N + 2
V(G) = 18 – 14 + 2
V(G) = 6
Dari perhitungan diatas didapatkan hasil V(G)=6, yang berarti jalur yang dimiliki oleh flow graph diatas
adalah 6 (enam) jalur. Dapat diketahui jalur yang dapat dilalui program tersebut adalah sebagai berikut:
Path 1 = 1-2-3-5-6-7-8-9-10-13-14
Path 2 = 1-2-3-5-6-7-8-9-11-13-14
Path 3 = 1-2-3-5-6-7-8-9-12-13-14
Path 4 = 1-2-3-4-3-5-6-7-8-9-10-13-14
Path 5 = 1-2-3-5-6-7-6-7-8-9-11-13-14
Path 6 = 1-2-3-5-6-7-8-3-5-6-7-8-9-12-13-14
3.4.3 Pengujian Graph Matric
Pengujian ini dilakukan untuk memberikan pembuktian terhadap cyclomatic complexity untuk
mencari letak kesalahan dalam source code yang ada pada Gambar 3. Berikut adalah graph matric yang
didapat dari Gambar 4

Tabel 1. Graph Matric


Node 1 2 3 4 5 6 7 8 9 10 11 12 13 14
1 a
2 b
3 d c
4 e
5 f
6 g
7 h i
8 j k
9 m l n
10 p
11 o
12 q
13 r
14

Tabel 2. Connection Matric


Node 1 2 3 4 5 6 7 8 9 10 11 12 13 14 Koneksi
1 1 =1-1=0
2 1 =1-1=0
3 1 1 =2-1=1
4 1 =1-1=0
5 1 =1-1=0
6 1 =1-1=0
7 1 1 =2-1=1
8 1 1 =2-1=1
9 1 1 1 =3-1=2
10 1 =1-1=0
11 1 =1-1=0
12 1 =1-1=0
13 1 =1-1=0
14

Didapatkan hasil 1 + 1 + 1 + 2 = 5. Dan hasil tersebut adalah nilai cyclomatic complexity dari pengujian
graph matric

4 Kesimpulan
Terjadi perbedaan nilai pada cyclomatic complexity dan graph matric yang berarti terdapat kesalahan
dalam source code tersebut. Dari hasil yang telah didapat, source code tersebut memiliki satu kesalahan
jalur yang nantinya perlu diperbaiki lagi. Berbeda dengan pengujian black box yang hanya menguji
interface dari sebuah program saja, white box lebih diutamakan untuk menentukan kesalahan logika pada
jalur program tersebut.
Daftar Pustaka
[1] Liana, L. (2015). Pengujian Perangkat Lunak (Software Testing). Jakarta: Universitas Mercu Buana.
[2] Handy, & Susilo, J. (2014). Aplikasi Pengujian White-Box IBII Online Judge. Jurnal Informatika dan
Bisnis, 2.
[3] Syaikhuddin, M. M., Anam, C., Rinaldi, A. R., & Conoras, M. E. (2018). Conventional Software
Testing Using White Box Method. KINETIK.
[4] Khan, M. E., & Khan, F. (2012). A Comparative Study of White Box, Black Box and Grey Box Testing
Techniques. International Journal of Advanced Computer Science and Applications, 12.
[5] Cyclomatic Complexity. (2019, Desember 26). Retrieved from tutorialspoint:
https://www.tutorialspoint.com/software_testing_dictionary/cyclomatic_complexity.htm

Anda mungkin juga menyukai