Loading...

Contoh Perhitungan Pengujian White Box

Assalam'muallaikum Wr.Wb

Selamat pagi sahabat dunia informasi, ane mau ngelanjutin artikel sebelumnya tentang white box gan, agan wajib baca yang ini biar agan lebih TOP deh gan, silakan 
Klik CARA MEMAHAMI PENGUJIAN WHITE BOX.
Kali ini ane mau membahas perhitungan white box, menentukan souce code, membuat jalur pada white box. Sebelum kita belajar bersama, mari kita membaca do'a dulu ya agan. 

Bismillah ....

Pengertian Black Box Testing
Black box testing adalah pengujian yang dilakukan hanya mengamati hasil eksekusi melalui data uji dan memeriksa fungsional dari perangkat lunak. Jadi dianalogikan seperti kita melihat suatu koatak hitam, kit hanya bisa melihat penampilan luarnya saja, tanpa tau ada apa dibalik bungkus hitam nya. Sama seperti pengujian black box, mengevaluasi hanya dari tampilan luarnya(interface nya) , fungsionalitasnya.tanpa mengetahui apa sesungguhnya yang terjadi dalam proses detilnya (hanya mengetahui input dan output).

Penggunaan metode pengujian white box dilakukan untuk :
  • Memberikan jaminan bahwa semua jalur independen suatu modul digunakan minimal satu kali
  • Menggunakan semua keputusan logis untuk semua kondisi true atau false
  • Mengeksekusi semua perulangan pada batasan nilai dan operasional pada setiap kondisi.
  • Menggunakan struktur data internal untuk menjamin validitas jalur keputusan.
Persyaratan dalam menjalankan strategi White Box Testing
  • Mendefinisikan semua alur logika
  • Membangun kasus untuk digunakan dalam pengujian
  • Mengevaluasi semua hasil pengujian
  • Melakukan pengujian secara menyeluruh

Notasi Diagram Alir (Path Graph Notation)

Notasi yang 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.

White box yang saya akan bahas souce code evaluasi dan nilai, nanti agan bisa perhatikan souce code.nya dibawah ini beserta gambarnya :

Contoh Souce code evaluasi dan nilai
Node
Source code
1
<form name="evaluasi" action="../proses/proses-hitung-nilai.php" method="post">
<input type="hidden" name="username" value="<?php echo $_SESSION['siswa'] ?>">
<table class="table table-bordered table-hover table-striped">            <?php
            $n=1;                                                                           $username=$_SESSION['siswa'];     
$cek="select * from evaluasi_sementara where nis='$username'";                                $result=mysql_query($cek) or die (mysql_error());                $jumlah_ketemu_user=mysql_num_rows($result);
2
if ($jumlah_ketemu_user==0) {         




Node
Source code
3
            mysql_query("insert into evaluasi_sementara (nis, pertanyaan, jawaban_a, jawaban_b, jawaban_c, jawaban_d,  kunci)  select '$username', Oval: 3pertanyaan, jawaban_a, jawaban_b, jawaban_c,jawaban_d, kunci from evaluasi order by rand() limit 10") or die (mysql_error());
            }
4
$query="select * from evaluasi_sementara where nis='$username'";                                $result=mysql_query($query) or die (mysql_error());

5
while ($data=mysql_fetch_array($result)) {



6
?>                                                                                            <tr>                                                                             <input type="hidden" name="kunci<?php echo $n; ?>" value="<?php echo $data['kunci']; ?>">                                
<input type="hidden" name="id_evaluasi<?php echo $n; ?>" value="<?php echo $data['id_evaluasi']; ?>">                                    <tr>                                                                            
<td width="20" ><?php echo $n; ?></td>                            
<td width="1000"><?php echo $data['pertanyaan'] ?           
<input required name="jawaban<?php echo $n; ?>" type="radio" value="a"> <?php echo $data['jawaban_a']; ?><br> 
<input required name="jawaban<?php echo $n; ?>" type="radio" value="b"> <?php echo $data['jawaban_b']; ?><br>                                                                         
<input required name="jawaban<?php echo $n; ?>" type="radio" value="c"> <?php echo $data['jawaban_c']; ?><br>
<input required name="jawaban<?php echo $n; ?>" type="radio" value="d"> <?php echo $data['jawaban_d']; ?><br>                                                                         
<br>                                                                           
</td>                                                                          
</tr>   
<?php                                                                                                  $n++;
             }                                                                                
?>

Node
Source code
7

<input type="hidden" name="max" value="<?php echo $n; ?>">                                         
</table>                                                          
            <button type="submit" class="btn btn-primary btn-sm">Submit</button>
</form>
<?php
include("../php/koneksi.php");
session_start();
$username=$_POST['username'];
$n=1;
$benar=0;
$max=$_POST['max'];
8
while ($n<$max) {



9
$id_evaluasi=$_POST['id_evaluasi'.$n];



10
if (!empty($_POST['jawaban'.$n])) {



11
$jawaban=$_POST['jawaban'.$n];
            }


12
$kunci=$_POST['kunci'.$n];



13
if ($jawaban==$kunci) {



14
            $benar++;
            }




Node
Source code
15
            $n++;
}



16
date_default_timezone_set("Asia/Jakarta");
$tgl=date("Y-m-d H:i:s");
$nilai=$benar/($n-1)*100;

17
if ($nilai<=70) {



18
            $keterangan="TIDAK LULUS";



19
}else{
$keterangan="LULUS";
}

20
mysql_query("insert into nilai (nilai,keterangan,tgl_evaluasi,nis) values ($nilai,'$keterangan','$tgl','$username')") or die (mysql_error());
mysql_query("delete from evaluasi_sementara where nis='$username'");
unset($_SESSION['selesai']);
?>
<script>
            window.location="../user/nilai.php";
</script>
<div class="col-md-9">
<div class="panel panel-primary">
<div class="panel-heading">
<h4 class="panel-title"><center><b>Nilai Siswa Mata Pelajaran Biologi Kelas VIII</h4></b></center>
            </div>
<div class="panel-body">
            <div id="webstat">
            <br/>
            <?php                                     

                                   

Node
Source code
            $nis=$_SESSION['siswa'];                                                                 $query="select * from nilai where nis='$nis' ";                        $result=mysql_query($query) or die (mysql_error());
            $n=1;
             ?>
            <div id="page-wrapper" style="min-height:325px; padding-right:30px; padding-left:0px">                                <table class="table table-bordered table-hover table-striped">                                            
<tr class="success">                                                                            <th><center>NO</center></th>                                <th><center>Nilai</center></th>                                          <th><center>Keterangan</center></th>                                <th><center>Tgl Evaluasi</center></th>     
</tr>                                                               
21
<?php                                                                                     
while ($data=mysql_fetch_array($result)) {
            ?>                                                                                                       
22
          <tr>                                          
<td><center><?php echo $n++; ?>
</center></td><td><center><?php echo $data['nilai'] ?>
</center></td><td><center><?php echo $data['keterangan'] ?>
</center></td>                                   
<td><center><?php echo $data['tgl_evaluasi'] ?></center></td>                                             
</tr>
<?php                                                                                     
}                                                                                 
?>
                       
23
</table>
</div>
</div>
</div>
</div>
</div>

Kompleksitas Siklomatis (Cyclomatic Complexity)

Kompleksitas Siklomatis adalah metriks perangkat lunak yang memberikan pengukuran kuantitatif terhadap kompleksitas logis suatu program. Ketika digunakan dalam konteks metode ujicoba berbasis alur, nilai yang didapat akan menentukan jumlah jalur independen dalam himpunan path, serta akan memberi nilai batas atas bagi jumlah pengujian yang harus dilakukan, untuk memastikan bahwa semua pernyataan telah dieksekusi sedikitnya satu kali.

Dari gambar diatas maka dapat ditentukan Cyclomatic Complexity sebagai berikut :
V(G)    = E-N+2
           = 30-23+2
           = 9
      E =  Jumlah busur pada flow graph yaitu 30
      N = Jumlah simpul pada flow graph yaitu 23
Jadi, jalur bebas pada flow graph notation yang akan diuji adalah sebanyak 9 jalur. Berdasarkan urutan alur flow graph di atas, didapat kelompok basis flow graph sebagai berikut :
             Jalur Bebas Flow Craph Notation
Basis Flow
Jalur bebas (independent path)
Jalur 1
1-2-3-5-6-5-7-8-9-10-11-13-14-16-17-18-20-21-22-21-23
Jalur 2
1-2-3-5-6-5-7-8-9-10-11-13-15-16-17-18-20-21-22-21-23
Jalur 3
1-2-4-5-6-5-7-8-9-10-12-13-15-16-17-19-20-21-22-21-23
Jalur 4
1-2-4-5-6-5-7-8-9-10-12-13-14-16-17-19-20-21-22-21-23
Jalur 5
1-2-3-5-6-5-7-8-9-10-12-13-15-8-16-17-18-20-21-22-21-23
Jalur 6
1-2-3-5-6-5-7-8-9-10-12-13-15-8-16-17-19-20-21-22-21-23
Jalur 7
1-2-4-5-6-5-7-8-9-10-12-13-15-8-16-17-18-20-21-22-21-23
Jalur 8
1-2-4-5-6-5-7-8-9-10-12-13-15-8-16-17-19-20-21-22-21-23
Jalur 9
1-2-4-5-6-5-7-8-9-10-11-15-8-16-17-19-20-21-20-21-23


Oke itu saja dulu ya gan, mohon maaf abila ada kesalahan dalam penulisan atau kata-katanya susah dipahami, nanti ane akan lanjutin lagi apabila banyak yang view gan, hehe.
Terimakasih sudah berkunjung di blog yang sederhana ini.Monggo di Share -->>>
Previous
Next Post »

6 comments

Click here for comments