Escolar Documentos
Profissional Documentos
Cultura Documentos
Pengujian White Box and Black Box Pada S PDF
Pengujian White Box and Black Box Pada S PDF
Disusun Oleh :
A1,A2
R1
A3
A4,A5
R2
A6
R3 A7-A10
A11
A12,A13
A14
A15
A16
R4
A17
A18
A19
A20
A21
R5
A22
A23
A26-A28
A24 A25
R6 A29 A30
3. Complexity Cyclometic :
1. V (G) Region = V (6)
2. V (G) E – N + 2 = 35– 31 + 2 = 6
3. V (G) P + 1 = 5 + 1 = 6
4. Independent Path :
1. A0 – A1-A2 – A3 – A14 – A15 – A19 – A20 – A24 – A25 – A29 – A30
2. A0 – A1-A2 – A3 – A4 – A5 – A6 – A11 – A12 – A13 – A14 – A15 – A19 – A20 –
A24 – A25 – A29 – A30
3. A0 – A1-A2 – A3 – A4 – A5 – A6 – A7-A10 – A11 – A12-A13 – A14 – A15 – A19
– A20 – A24 – A25 – A29 – A30
4. A0 – A1-A2 – A3 – A4 – A5 – A6 – A7-A10 – A11 – A12-A13 – A14 – A15 – A16
– A17 – A18 – A19 – A20 – A24 – A25 – A29 – A30
5. A0 – A1-A2 – A3 – A4 – A5 – A6 – A7-A10 – A11 – A12-A13 – A14 – A15 – A16
– A17 – A18 – A19 – A20 – A21 – A22 – A23 – A24 – A25 – A29 – A30
6. A0 – A1-A2 – A3 – A4 – A5 – A6 – A7-A10 – A11 – A12-A13 – A14 – A15 – a16 –
A17 – A18 – A19 – A20 – A21 – A22 – A23 – A24 – A25 – A26-A28 – A29 – A30
5. Test Case
I. 1. A (3) = FALSE
2. A (6) = FALSE V. 1. A (3) = TRUE
3. A(15) = FALSE 2. A (6) = TRUE
4. A(20) = FALSE 3. A(15) = TRUE
5. A(25) = FALSE 4. A(20) = TRUE
5. A(25) = FALSE
II. 1. A (3) = TRUE
2. A (6) = FALSE VI. 1. A (3) = TRUE
3. A(15) = FALSE
2. A (6) = TRUE
4. A(20) = FALSE
5. A(25) = FALSE 3. A(15) = TRUE
4. A(20) = TRUE
III. 1. A (3) = TRUE 5. A(25) = TRUE
2. A (6) = FALSE
3. A(15) = FALSE
4. A(20) = FALSE
5. A(25) = FALSE
IV. 1. A (3) = TRUE
2. A (6) = TRUE
3. A(15) = TRUE
4. A(20) = FALSE
5. A(25) = FALSE
B. proseslogin.php
1. Program
A0 <?php
A1 include("koneksi.php");
A2 $nama=$_POST['nama'];
A3 $pass=$_POST['pass'];
A4 $hak=$_POST['hak'];
A5 $mysql=mysql_query("SELECT nama,pass,hak From user where nama='$nama' and
pass='$pass' and hak='$hak'") or die(mysql_error());
A6 if($b=mysql_fetch_array($mysql)){
A7 session_start();
A8 $_SESSION['nama'] = $_POST['nama'];
A9 $_SESSION["pass"]=$_POST["pass"];
A10 if($b[2]=='Admin'){
A11 header ("location:woiurewurowUser890.php");
A12 exit();
A13 }
A14 if($b[2]=='Pustakawan'){
A15 header ("location:adm.php");
A16 exit();
A17 }
A18 }
A19 }
A20 header ("location:wp-r.php");
A21 exit(); ?>
2. Basis Path :
A0-A5
R1 A6
A7
A8
R2
A9
A10
A11
R3
A12
A13
A14
A15
R4
A16
A17
A18
A19
A20
A21
3. Complexity Cyclometic :
1. V (G) Region = V (4)
2. V (G) E – N + 2 = 23 – 21 + 2 = 4
3. V (G) P + 1 = 3 + 1 = 4
4. Independent Path :
1. A0-A5 – A6 – A17 – A18 – A19 – A20 – A21
2. A0-A5 – A6 – A7 – A8 – A9 – A10 – A13 – A14 – A17 – A18 – A19 – A20 – A21
3. A0-A5 – A6 – A7 – A8 – A9 – A10 – A11 – A12 – A13 – A14 – A17 – A19 – A19 –
A20 – A21
4. A0-A5 – A6 – A7 – A8 – A9 – A10 – A11 – A12 – A13 – A14 – A15 – A16 – A17 –
A18 – A19 – A20 – A21
5. Test Case :
I.
1. A(6) = FALSE
2. A(10) = FALSE
3. A(14) = FALSE
II.
1. A(6) = TRUE
2. A(10) = FALSE
3. A(14) = FALSE
III.
1. A(6) = TRUE
2. A(10) = TRUE
3. A(14) = FALSE
IV.
1. A(6) = TRUE
2. A(10) = TRUE
3. A(14) = FALSE
C. input.php
1. Program
A0 <?php
A1 include("koneksi.php");
A2 $stat=$_GET['stat'];
A3 if($stat=="in"){
A4 $kode =$_POST['kode'];
A5 $judul = $_POST['judul'];
A6 $gol = $_POST['gol'];
A7 $tgl = $_POST['tgl'];
A8 $jml = $_POST['jml'];
A9 $foto = $_FILES ['foto']['name'];
A10 $pen = $_POST['pen'];
A11 $peng = $_POST['peng'];
A12 $pdf = $_FILES ['pdf']['name'];
A13 if($_FILES["pdf"]["size"] > 0 || $_FILES["pdf"]["error"] == 0 &&
($_FILES["pdf"]["type"]==".pdf" ||$_FILES["pdf"]["type"]==".pdf")){
A14 $temp = explode(".", $_FILES["pdf"]["name"]);
A15 $extension = end($temp);
A16 $new=$judul.".".$extension;
A17 $move = move_uploaded_file($_FILES['pdf']['tmp_name'], 'doc/'.$new);
A18 $temp1 = explode(".", $_FILES["foto"]["name"]);
A19 $extension1 = end($temp1);
A20 $new1=$tgl.".".$extension1;
$move1 = move_uploaded_file($_FILES['foto']['tmp_name'],
A21 'img/'.$new1);
A22 if($move){
$sql="INSERT INTO
A23 bb(kode,judul,gol,tgl,jml,foto,lokasi1,peng,pen,pdf,lokasi)
VALUES('$kode','$judul','$gol','$tgl','$jml','$new1','image/$new1',
'$peng','$pen','$new','pdf/$new')";
A24 }
A25 $result=mysql_query($sql)or die(mysql_error());
A26 if($result){
A27 echo " Data berhasil di Inputkan ";
A28 header("Location:adm.php");}
A29 else {
A30 echo " Data gagal di Inputkan ";
A31 header("Location:adm.php");} } }
A32 if($stat=="go"){
A33 $go = $_POST['go'];
A34 $sql="INSERT INTO gol (go) VALUES ('$go')";
A35 $result=mysql_query($sql)or die(mysql_error());
A36 if($result){
A37 header("Location: tmbhktg.php");
A38 }
A39 else {
A40 header("Location: tmbhktg.php");
A41 }
A42 }
A43 if($stat=="user"){
A44 $nama = $_POST['nama'];
A45 $pass = $_POST['pass'];
A46 $hak = $_POST['hak'];
$sql="INSERT INTO user (nama,pass,hak) VALUES
A47 ('$nama','$pass','$hak')";
A48 $result=mysql_query($sql)or die(mysql_error());
A49 if($result){
A50 header("Location: woiurewurowUser890.php");
A51 }
A52 else {
A53 header("Location: woiurewurowUser890.php");} }
A54 if($stat=="on"){
A55 $nama = $_POST['nama'];
A56 $divisi = $_POST['divisi'];
A57 $buk = $_POST['buk'];
A58 $saran = $_POST['saran'];
A59 $sql="INSERT INTO saran (nama,devisi,buk,saran)
VALUES ('$nama','$divisi','$buk','$saran')";
A60 $result=mysql_query($sql)or die(mysql_error());
A61 if($result){
A62 header("Location: saran.php");}
A63 else {
A64 header("Location: saran.php"); }
A65 } ?>
2. Basis path
3. Cyclometri complexity:
𝑉(𝑔) = 𝐸𝑑𝑔𝑒 − 𝑁𝑜𝑑𝑒 + 2 = 76 − 67 + 2 = 11
𝑅𝑒𝑔𝑖𝑜𝑛 = 11
𝑃𝑁 = 10 + 1 = 11
4. Jalur Independen:
1. A0-A1-A2-A3-A33-A35-A42-A43-A53-A54-A65-A67
2. A0-A1-A2-A3-(A4-A12)-A13-A33-A34-A42-A43-A53-A65-A66
3. A0-A1-A2-A3-(A4-A12)-A13-(A14-A21)-A22-(A24-A25)-A26-(A30-A32)- A33-
A34-A42-A43-A53-A65-A66
4. A0-A1-A2-A3-(A4-A12)-A13-(A14-A21)-A22-A23-(A24-A25)- A26-(A30-A32)-
A33-A34-A42-A43-A53-A65-A66
5. A0-A1-A2-A3-(A4-A12)-A13-(A14-A21)-A22- (A24-A25)- A26-(A27-A29)-
(A30-A32)- A33-A34-A42-A43-A53-A65-A66
6. A0-A1-A2-A3-(A4-A12)-A13-(A14-A21)-A22-A23- (A24-A25)- A26-(A27-
A29)-(A30-A32)- A33-A34-A42-A43-A53-A65-A66
7. A0-A1-A2-A3-(A4-A12)-A13-(A14-A21)-A22-A23- (A24-A25)- A26-(A27-
A29)-(A30-A32)- A33-A34-(A35-A37)-A38-A39-A42-A43-A53-A65-A66
8. A0-A1-A2-A3-(A4-A12)-A13-(A14-A21)-A22-A23- (A24-A25)- A26-(A27-
A29)-(A30-A32)- A33-A34-(A35-A37)-A38-A40-A41-A42-A43-A53-A65-A66
9. A0-A1-A2-A3-(A4-A12)-A13-(A14-A21)-A22-A23- (A24-A25)- A26-(A27-
A29)-(A30-A32)- A33-A34-(A35-A37)-A38- A39-A42-A43-(A44-A48)-A49-
A51-A52-A53-A65-A66
10. A0-A1-A2-A3-(A4-A12)-A13-(A14-A21)-A22-A23- (A24-A25)- A26-(A27-
A29)-(A30-A32)- A33-A34-(A35-A37)-A38- A39-A42-A43-(A44-A48)-A49-
A50-A53-A54-(A55-A60)-A61-A63-A64-A65-A66
11. A0-A1-A2-A3-(A4-A12)-A13-(A14-A21)-A22-A23- (A24-A25)- A26-(A27-
A29)-(A30-A32)- A33-A34-(A35-A37)-A38- A39-A42-A43-(A44-A48)-A49-
A50-A53-A54-(A55-A60)-A61-A62-A65-A66
5. Test Case
1. A3 = FALSE A49 = FALSE A34 = TRUE
A13 = FALSE A54 = FALSE A38 = TRUE
A22 = FALSE A61 = FALSE A43 = TRUE
A26 = FALSE 6. A3 = TRUE A49 = TRUE
A34 = FALSE A13 = TRUE A54 = TRUE
A38 = FALSE A22 = TRUE A61 = FALSE
A43 = FALSE A26 = TRUE 11. A3 = TRUE
A49 = FALSE A34 = FALSE A13 = TRUE
A54 = FALSE A38 = FALSE A22 = TRUE
A61 = FALSE A43 = FALSE A26 = TRUE
2. A3 = TRUE A49 = FALSE A34 = TRUE
A13 = FALSE A54 = FALSE A38 = TRUE
A22 = FALSE A61 = FALSE A43 = TRUE
A26 = FALSE 7. A3 = TRUE A49 = TRUE
A34 = FALSE A13 = TRUE A54 = TRUE
A38 = FALSE A22 = TRUE A61 = TRUE
A43 = FALSE A26 = TRUE
A49 = FALSE A34 = TRUE
A54 = FALSE A38 = TRUE
A61 = FALSE A43 = FALSE
3. A3 = TRUE A49 = FALSE
A13 = TRUE A54 = FALSE
A22 = FALSE A61 = FALSE
A26 = FALSE 8. A3 = TRUE
A34 = FALSE A13 = TRUE
A38 = FALSE A22 = TRUE
A43 = FALSE A26 = TRUE
A49 = FALSE A34 = TRUE
A54 = FALSE A38 = FALSE
A61 = FALSE A43 = FALSE
4. A3 = TRUE A49 = FALSE
A13 = TRUE A54 = FALSE
A22 = TRUE A61 = FALSE
A26 = FALSE 9. A3 = TRUE
A34 = FALSE A13 = TRUE
A38 = FALSE A22 = TRUE
A43 = FALSE A26 = TRUE
A49 = FALSE A34 = TRUE
A54 = FALSE A38 = TRUE
A61 = FALSE A43 = TRUE
5. A3 = TRUE A49 = FALSE
A13 = TRUE A54 = FALSE
A22 = FALSE A61 = FALSE
A26 = TRUE 10. A3 = TRUE
A34 = FALSE A13 = TRUE
A38 = FALSE A22 = TRUE
A43 = FALSE A26 = TRUE
D. Logout
1. Program
A0 <?php
A1 session_start();
A2 unset($_SESSION["nama"]);
A3 unset($_SESSION["pass"]);
A4 header ("location:wp-r.php");?>
2. Basis Path
A0
A1
R1
A2
A3
A4
3. Cyclometri complexity:
a. V (G) Region = V (1)
b. V (G) E – N + 2 = 4 – 5 + 2 = 1
c. V (G) P + 1 = 0 + 1 = 1
4. Independent Path :
a. A0 – A1 – A2 – A3 – A4
5. Test Case
Null
E. Edit.php
1. Program
A0 <?php
A1 include("koneksi.php");
A2 $no_a=$_GET['no_a'];
A3 $no=$_POST['noi'];
A4 $go=$_POST['go'];
A5 $query=mysql_query("UPDATE gol SET go='$go' WHERE no='$no_a'")
or die (mysql_error());
A6 if($query){
A7 header("location:tmbktg.php");
A8 }
A9 else {
A10 header("location:tmbktg.php");
A11 }?>
2. Basis Path
A0
A1
A2
A3
R1
A4
A5
A6
A9 A7
R2
A10 A8
A11
3. Complexity Cyclometic :
a. V (G) Region = V (2)
b. V (G) E – N + 2 = 12 – 12 + 2 = 2
c. V (G) P + 1 = 1 + 1 = 2
4. Independent Path :
a. A0 – A1 – A2 – A3 – A4 – A5 – A6 – A9 – A10 – A11
b. A0 – A1 – A2 – A3 – A4 – A5 – A6 – A7 – A8 – A11
5. Test Case :
a. [A7] = TRUE
b. [A7] = TRUE
2. Pengujian Black Box
2.1Equivalent Testing
A. Admin Website
1. Login
Fitur Skenario Pengujian Hasil
Admin Memasukkan username Tidak Valid tetapi dari
dan password yang system tidak ada
berbeda dengan database, peringatan atau notifikasi
misal di inputkan jika inputan salah, dan
password dan username juga tidak merusak
diluar ketentuan pada jalannya system yang ada
database (tidak hang).
Pustakawan Memasukkan username Tidak Valid tetapi dari
dan password yang system tidak ada
berbeda dengan database, peringatan atau notifikasi
misal di inputkan jika inputan salah, dan
password dan username juga tidak merusak
diluar ketentuan pada jalannya system yang ada
database (tidak hang).
B. Pengunjung Website
1. User
Fitur Skenario Pengujian Hasil
Searching Menginputan berupa angka, Berhasil dan tidak terjadi error atau
huruf, tanda baca. hang pada system yang sedang
berjalan.
Create saran Menginputkan nama berupa Berhasil masuk database namun
angka, huruf, tanda baca pada :
pada nama, buku, dan saran - text field buku jika di inpukan
angka minus atau tidak, data
tidak dapat dimasukkan
kedalam database.
2.2Limit Testing
Pengujian ini dilakukan dengan cara memasukkan inputan yang nilainya berada di
perbatasan. Beberapa yang diujikan dapat dilihat dalam table berikut ini :
A. Pustakawan Website
1. Login
Fitur Skenario pengujian Hasil
Pustakawan Memasukkan username Terjadi error tetapi dari system tidak
dan password yang ada peringatan atau notifikasi jika
berbeda dengan inputan salah.
database, misal di
inputkan username
admin dan password 12
Memasukkan username
dan password yang
berbeda dengan
database, misal di
inputkan username
admin dan password
1234
3. Pustakawan (kategori)
Fitur Skenrio pengujian Hasil
Tambah Terdapat field kategori dan Terdapat notifikasi jika data telah
kategori kemudian tidak inputkan berhasil di tambahkan. Seharusnya
nama kategori (kategori null) kategori tidak bisa bernilai null.
B. Pengunjung Website
1. User
Fitur Skenario Pengujian Hasil
Create saran Terdapat field nama dan Terdapat notifikasi jika saran telah
kemudian tidak inputkan dikirim.
pada field nama (nama null)
Terdapat field buku dan Terdapat notifikasi jika saran telah
kemudian tidak inputkan dikirim.
pada field buku (buku null
Terdapat field divisi dan Terdapat notifikasi jika saran telah
kemudian tidak inputkan dikirim.
pada divisi (divisi null)
Terdapat field saran dan Terdapat notifikasi jika saran telah
kemudian tidak inputkan dikirim.
pada field saran (saran null)
2.3Robustness Testing
A. Admin Website
1. Login
Fitur Skenario pengujian Hasil
Admin Memasukkan username dan Terjadi error tetapi dari system tidak
password yang berbeda ada peringatan atau notifikasi jika
dengan database, misal di inputan salah, dan juga tidak merusak
inputkan username asmin jalannya system yang ada (tidak
dan password 567 hang).
Pustakawan Memasukkan username dan Terjadi error tetapi dari system tidak
password yang berbeda ada peringatan atau notifikasi jika
dengan database, misal di inputan salah, dan juga tidak merusak
inputkan username asmin jalannya system yang ada (tidak
dan password 567 hang).
5. Pustakawan (kategori)
Fitur Skenrio pengujian Hasil
Tambah Tombol tambah dapat di klik Terjadi error harusnya tidak bisa field
kategori jika field kosong. dikosongi dan ada kategori yang
sama tetap bisa diinputkan,tetapi
tidak merusak jalannya system yang
ada (tidak hang)
Delete Menghapus kategori yang Berhasil dan tidak terjadi error atau
kategori diisikan admin kesalahan pada system (tidak terjadi
hang)
Edit Kategori Mengedit kategori yang Berhasil dan tidak terjadi error atau
sudah ada sebelumnya bila kesalahan pada system (tidak terjadi
diperlukan. hang)
Dan seharus apabila terdapat kategori
yang sama maka seharusnya tidak
bisa.
6. Logout
Fitur Skenario pengujian Hasil
Admin logout Melakukan proses keluar Logout berhasil dan kembali ke
dari halaman dengan meng- halaman awal.
klik tombol logout.
7. Home
Fitur Skenario Pengujian Hasil pengujian
kategori ALL Menampilkan semua jenis Berhasil dan tidak terjadi error atau hang
kategori buku yang terdapat pada system yang sedang berjalan
pada database
kategori Menampilkan kategori Berhasil dan tidak terjadi error atau hang
Pembangkit pembangkit yang terdapat pada system yang sedang berjalan
pada database
kategori Menampilkan semua jenis Berhasil dan tidak terjadi error atau hang
SDM kategori buku SDM yang pada system yang sedang berjalan
terdapat pada database
kategori Menampilkan semua jenis Berhasil dan tidak terjadi error atau hang
Laporan kategori laporan yang pada system yang sedang berjalan
terdapat pada database
B. Pengunjung Website
1. User
Fitur Skenario Pengujian Hasil
Searching Mencari detail buku yang Berhasil dan tidak terjadi error atau
diinginkan oleh user hang pada system yang sedang
berjalan.
Read buku Membaca bukuyang Berhasil dan tidak terjadi error atau
diinginkan dengan klik baca hang pada system yang sedang
berjalan.
Create saran Menginputkan atau Terjadi error karena inputan kosong
membuat saran masih bisa disimpan pada database
Missal : “ null” tetapi tidak mengganggu system
yang sedang berjalan (tidak hang)
2.4Requirement Testing
A. Pengunjung Website
1. Validitas Home
Pengguna dapat melihat tampilan home
2. Validitas Kategori
Pengguna dapat emilih judul buku sesuai kategori
3. Validitas Cari
Pengguna dapat melihat daftar buku yang dicarinya dalam bentuk tabel
4. Validitas Baca
Sistem dapat menampilkan isi buku sehingga dapat langsung dibaca oleh pengguna.
Pengguna harus menginstall Adobe Flash terlebih dahulu pada komputernya agar bisa
menampilkan isi buku pada halaman website. Jika pengguna telah menginstal adobe
flash pada computer, maka nantinya pengguna akan memiliki fitur tambahan berupa
zoom in, zoom out, print, save.
5. Validitas Detail
6. Validitas Saran
Yang diiznkan untuk login hanyalah pustakawan dan admin. Pengguna dapat
melakukan login dengan username : Admin, password : 123 hak: pustakawan/admin
3. Validasi Delete
Pengguna dapat menghapus data dengan mengklik tanda silang