metode-pengujian-blackbox

53
Metode Pengujian Perangkat Lunak (Black Box) Pertemuan 10 Febriyanno Suryana, S.Kom, M [email protected] 0852 7474 1981 SI -2013

description

baca dulu baru download..

Transcript of metode-pengujian-blackbox

Page 1: metode-pengujian-blackbox

Metode Pengujian Perangkat Lunak

(Black Box)

Pertemuan 10

Febriyanno Suryana, S.Kom,

[email protected]

0852 7474 1981 SI -2013

Page 2: metode-pengujian-blackbox

Defenisi Black Box

2

Menurut Myers (1979) : Proses menjalankan program dengan

maksud menemukan kesalahan.Menurut IEEE (1990) :

Pengujian yang mengabaikan mekanisme internal sistem atau komponen dan fokus semata-mata pada output yang dihasilkan yang merespon input yang dipilih dan kondisi eksekusi.

Pengujian yang dilakukan untuk mengevaluasi pemenuhan sistem atau komponen dengan kebutuhan fungsional tertentu.

Page 3: metode-pengujian-blackbox

Defenisi...

3

Digunakan untuk menguji fungsi-fungsi khusus dari PL yang dirancang.

Kebenaran pengujian dilihat dari keluaran yang dihasilkan dari data atau kondisi masukan yang diberikan untuk fungsi yang ada tanpa melihat bagaimana proses untuk mendapatkan keluaran tersebut.

Dari keluaran yang dihasilkan, kemampuan program dalam memenuhi kebutuhan pemakai dapat diukur sekaligus dapat diketahui kesalahannya.

Page 4: metode-pengujian-blackbox

Black Box...

4

Ie

Input test data

OeOutput test results

System

Inputs causinganomalousbehaviour

Outputs which revealthe presence ofdefects

Page 5: metode-pengujian-blackbox

Tujuan Black Box

Menemukan : Fungsi yang tidak benar atau hilang Kesalahan interface Error pada struktur data atau akses database

external Error pada kinerja Error pada saat inisialisasi dan terminasi Kesensitifan sistem terhadap nilai input

tertentu Batasan dari suatu data

5

Page 6: metode-pengujian-blackbox

Pertanyaan yang akan dijawab dari pengujian Black Box...?

Bagaimana validitas fungsional diuji ? Jenis input apa yang akan membuat kasus pengujian menjadi lebih baik ? Apakah sistem akan sangat sensitif terhadap nilai input tertentu ? Bagaimana batasan dari suatu data diisolasi ? Berapa rasio data dan jumlah data yang dapat ditoleransi oleh system ? Apa akibat yang akan timbul dari kombinasi spesifik data pada operasi sistem?

6

Page 7: metode-pengujian-blackbox

Beberapa metode/teknik pengujian Black Box

1. Metode Graph Based2. Metode Equivalence Partitioning3. State Transition Table4. Boundary Values Analysis

7

Page 8: metode-pengujian-blackbox

1. Metode Graph Based

Pada teknik/metode ini langkah yang dilakukan adalah memahami objek (data dan program) yang dimodelkan didalam PL

Langkah selanjutnya menentukan sederetan pengujian yang membuktikan bahwa semua objek memiliki hubungan antara satu dengan lainnya.

8

Page 9: metode-pengujian-blackbox

Metode Graph Based...

9

Representasi simbolik dari grafik :

Link simetrisLink paralel

Page 10: metode-pengujian-blackbox

Metode Graph Based...

= Simpul, merepresentasikan objek

= link, merepresentasikan hubungan antar objek

Beban simpul (node weight), menggambarkan properti dari suatu simpul.

Beban link (link weight), menggambarkan karakterisktik suatu link

10

Page 11: metode-pengujian-blackbox

Metode Graph Based...

11

Contoh grafik pengolah kata (MS.Word)

Page 12: metode-pengujian-blackbox

Metode Graph Based...

Pendekatan pengujian :1. Defenisikan semua simpul dan beban simpul

dimana objek dan atribut didefenisikan.o Tentukan titik mulai (simpul masuk) dan berhenti (simpul keluar)

2. Bangun link dan beban link kemudian diberi nama.

3. Masing – masing link dipelajari secara terpisah, sehingga test case dapat didesain.

4. Jika terdapat hubungan transitif, maka pelajari hubungan tersebut untuk menentukan bagaimana pengaruh hubungan tersebut menyebar pada objek yang ditentukan. 1

2

Page 13: metode-pengujian-blackbox

Metode Graph Based...

Contoh hubungan transitif :Ada 3 objek X,Y,Zhubungannya :

X diperlukan untuk menghitung YY diperlukan untuk menghitung Z

sehingga dibangun hubungan ransitif antara X dgn Z :

X diperlukan untuk menghitung Z

13

Page 14: metode-pengujian-blackbox

Metode Graph Based...

Secara grafis :

Untuk link simetris, bila link tersebut benar – benar 2 arah (simetris), maka harus diuji kedua arah tersebut.

Pada saat desain test case dimulai, harus diperhatikan : Cakupan simpul (node coverage) Cakupan link (link coverage)

14

X Y

Z

Hubungantransitif

Page 15: metode-pengujian-blackbox

2. Metode Equivalence Partitioning

Merupakan test case yang ideal mengungkapkan kelas kesalahan, karena pada teknik ini berusaha mengungkapkan kelas-kelas kesalahan sehingga mengurangi jumlah total test case yang harus dikembangkan.

Metode ini membagi domain input dari suatu program kedalam kelas - kelas data sehingga test case dapat diperoleh.

Kelas data yang terbentuk disajikan sebagai kondisi input dalam kasus uji.

Kelas merupakan himpunan nilai-nilai yang valid dan tidak valid.

Desain test case partisi ekivalensi didasarkan pada evaluasi terhadap kelas ekivalensi untuk suatu kondisi input

15

Page 16: metode-pengujian-blackbox

Metode Equivalence Partitioning...

Kondisi input bisa merupakan suatu : Range harga Harga numerik (harga khusus/tertentu) Serangkaian harga (himpunan) Suatu kondisi boolean.

16

Page 17: metode-pengujian-blackbox

Metode Equivalence Partitioning...

Kelas ekivalensi dapat ditentukan sesuai pedoman sbb ;

Bila kondisi input berupa suatu range, maka input kasus ujinya 1 valid dan 2 invalid.

Bila kondisi input berupa harga khusus, maka input kasus ujinya 1 valid dan 2 invalid.

Bila kondisi input berupa anggota himpunan, maka input kasus ujinya 1 valid dan 2 invalid.

Bila kondisi input berupa anggota boolean, maka input kasus ujinya 1 valid dan 1 invalid

17

Page 18: metode-pengujian-blackbox

Metode Equivalence Partitioning...

Contoh ;Sebuah aplikasi perbankan otomatis, dimana aplikasi ini digunakan oleh nasabah untuk bertransaksi dengan Bank menggunakan ATM.Untuk aksesnya menggunakan password/PIN dengan 4 digit dan diikuti dengan serangkaian perintah kata kunci yang memicu berbagai fungsi perbankan.

Sebagian input data dari aplikasi ini adalah : Password/PIN : 4 digit Pilihan menu : “penarikan”, “pembayaran” “informasi” , “transfer”, dll

18

Page 19: metode-pengujian-blackbox

Metode Equivalence Partitioning...

Pembahasan ;Kondisi input yang sesuai dengan masing2 elemen data untuk aplikasi perbankan tersebut adalah :

Password/PIN : kondisi input range (4 digit numeric) Pilihan menu : kondisi input himpunan (berisi

beberapa pilihan/perintah)

19

Page 20: metode-pengujian-blackbox

Metode Equivalence Partitioning...

Data test case yang didesain adalah : Password/PIN (kondisi input : range)

Valid (0000, 1111, 1234, 9876, 9999) Invalid (000, 789, 555, 999, 100) Invalid (00, 11, 99, 12, 89)

Pilihan menu (kondisi input : himpunan) Valid (“penarikan”, “pembayaran”, “informasi”,

“transfer”) Invalid (1, 3, 5, 0) Invalid (cancel, stop, enter, clear)

20

Page 21: metode-pengujian-blackbox

3. Teknik State Transition Table

State Transition testing menggunakan model sistem, yang terdiri dari : Status yang terdapat dalam program Transisi antar status–status Kejadian yang merupakan sebab dari transisi–

transisi tersebut Aksi-aksi yang akan dihasilkan

Model umumnya direpresentasikan dalam bentuk state transition diagram.

Test case didesain untuk memeriksa validitas transisi antar status. Test case tambahan juga akan didesain untuk testing terhadap transisi-transisi yang tidak termasuk dan tidak dispesifikasikan.

21

Page 22: metode-pengujian-blackbox

Teknik State Transition Table...

Test case untuk transaksi yang valid :

Test case didesain untuk memeriksa transisi-transisi yang

valid.

Untuk setiap test case, terdapat spesifikasi sebagai berikut ;

Status mulai

Masukan

Keluaran yang diharapkan

Status akhir yang diharapkan

22

Page 23: metode-pengujian-blackbox

Teknik State Transition Table...

23

Contoh sederhana pada saklar lampu :

Page 24: metode-pengujian-blackbox

Teknik State Transition Table...

24

Page 25: metode-pengujian-blackbox

Teknik State Transition Table...

25

Page 26: metode-pengujian-blackbox

Teknik State Transition Table...

26

Page 27: metode-pengujian-blackbox

Teknik State Transition Table...

27

Page 28: metode-pengujian-blackbox

Teknik State Transition Table...

28

Page 29: metode-pengujian-blackbox

4. Boundary Value Analysis

Boundary Value fokus pada suatu batasan nilai dimana kemungkinan terdapat cacat yang tersembunyi.

BV mengarahkan pada pemilihan kasus uji yang melatih nilai-nilai batas. BV merupakan desain teknik kasus uji yang melengkapi Equivalence class testing. Dari pada memfokuskan hanya pada kondisi input, BVA juga menghasilkan kasus uji dari domain output.

Menguji untuk input di sekitar batas atas maupun bawah sebuah range nilai yang valid.

Menguji nilai maksimal dan minimal. Menerapkan (1 & 2) untuk output. Menguji batas struktur data yang dipakai. Misal ukuran

array.

29

Page 30: metode-pengujian-blackbox

Boundary Value...

Langkah-langkah testing : Identifikasi kelas-kelas yang ekuivalen

(equivalence class). Identifikasi batasan untuk tiap equivalence class. Buat test case untuk tiap batasan suatu nilai

dengan memilih titik pada batasan, satu titik pada nilai bawah batasan dan satu titik pada nilai atas batasan.

30

Page 31: metode-pengujian-blackbox

Boundary Value...

Contoh : nilai gaji

31

Tes data input untuk batas bawah adalah {$999, $1,000, $1,001} dan untuk batas atas {$83,332, $83,333, $83,334}.

Page 32: metode-pengujian-blackbox

Contoh Form Pengujian

Pengujian Interface Sistem Pengujian Fungsi Dasar Sistem Pengujian Form Handle Sistem Pengujian Keamanan Sistem

Page 33: metode-pengujian-blackbox

1. Pengujian Interface Sistem

Page 34: metode-pengujian-blackbox
Page 35: metode-pengujian-blackbox

2. Pengujian Fungsi Dasar Sistem

Page 36: metode-pengujian-blackbox

3. Pengujian Form Handle Sistem

Page 37: metode-pengujian-blackbox
Page 38: metode-pengujian-blackbox

4. Pengujian Keamanan Sistem

Page 39: metode-pengujian-blackbox

Contoh Form Pengujian….cont

Page 40: metode-pengujian-blackbox
Page 41: metode-pengujian-blackbox
Page 42: metode-pengujian-blackbox

Kesimpulan

Metode Graph Based mengeksplorasi hubungan dan tingkah laku objek-objek program.

Partisi ekivalensi membagi domain input ke dalam kelas data yang mungkin untuk melakukan fungsi perangkat lunak tertentu.

Analisis nilai batas memeriksa kemampuan program untuk menangani data pada batas yang dapat diterima.

42

Page 43: metode-pengujian-blackbox

Exceptional Condition

Komponen utama dari pengujian suatu transaksi adalah data testing.

Boris Beizer dalam bukunya menyarankan bahwa 30 s/d 40 persen dari pengujian suatu transaksi adalah : Generating Capturing Extracting test dataDan jangan dilupakan bahwa kegiatan tersebut

juga membutuhkan resouce waktu dan personel dalam suatu project.

43

Page 44: metode-pengujian-blackbox

Exceptional Condition...

Pengujian mengenai alur dari suatu transaksi relatif mudah dilakukan karena sebagian besar hanya memperhitungkan valid atau tidak validnya data yang dimasukkan.

Hal yang lebih sulit dilakukan adalah menguji exceptional condition seperti low memory, disk full, connection lost, driver not loaded, dll. Tester membutuhkan waktu yang sangat banyak untuk melakukan simulasi tersebut jika dilakukan secara manual.

Untuk itu telah tersedia sebuah tool yang bernama holodeck yang dibuat oleh James Whittaker dan timnya dari Florida Institute of Technology. Holodeck melakukan monitor terhadap interaksi antara aplikasi dan sistem operasi. Holodeck melakukan pencatatan terhadap aktifitas sistem dan memungkinkan tester untuk melakukan simulasi seperti low memory, disk full, connection lost, driver not loaded, dll.

44

Page 45: metode-pengujian-blackbox

Exceptional Condition...

45

Holodeck

Page 46: metode-pengujian-blackbox

Contoh pengujian Black Box...

46

Page 47: metode-pengujian-blackbox

Contoh pengujian Black Box...

47

Page 48: metode-pengujian-blackbox

Contoh pengujian Black Box...

48

Page 49: metode-pengujian-blackbox

Contoh pengujian Black Box...

49

Page 50: metode-pengujian-blackbox

Contoh pengujian Black Box...

50

Page 51: metode-pengujian-blackbox

Contoh pengujian Black Box...

51

Page 52: metode-pengujian-blackbox

Contoh pengujian Black Box...

52

Page 53: metode-pengujian-blackbox

End Session

53

www.suryagsc.wordpress.com