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 ....
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
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 -->>>
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.
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', pertanyaan,
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 -->>>
6 comments
Click here for commentscara gawe flowgraph pye
Replysaya gak paham, gan :(
Replymantap bg
ReplyMakasih sangat bermanfaat..
ReplySaya gak paham sist :'(
ReplySaya juga
ReplyConversionConversion EmoticonEmoticon