Staffsite STMIK PPKIA Pradnya Paramita

TESTING DAN
IMPLEMENTASI
PERTEMUAN 6
DESAIN TEST CASE BLACK BOX TESTING
(BAGIAN 2)

CAUSE EFFECT GRAPHING TECHNIQUES
~ PETUNJUK PENGGUNAAN ~


Ada 4 langkah untuk penggunaan
tehnik Cause Effect Graphing:
1. Tiap sebab (kondisi input) dan akibat

(aksi) yang ada pada suatu modul
didaftarkan.
2. Gambar sebab-akibat (cause-effect
graph) dibuat.
3. Gambar di konversikan ke tabel
keputusan
4. Aturan-aturan yang ada di tabel

keputusan, dikonversikan ke test case.

CAUSE EFFECT GRAPHING TECHNIQUES
~ CONTOH PENGGUNAAN ~


Sebuah
aplikasi
e-commerce
melakukan
validasi
pembayaran yang menggunakan kartu kredit dengan
melihat status kartu, limit belanja kartu, lokasi pemegang
kartu dan status rekening. Hasil dari validasi diatas,
selanjutnya sistem akan memberikan respon kepada user
berupa tindakan yang harus dilakukan oleh user. Tindakan
tersebut antara lain mensetujui pembayaran tersebut,
menelpon bank atau menelpon pemegang kartu. Causeeffect dari kasus diatas dapat dilihat dibawah:

CAUSE EFFECT GRAPHING TECHNIQUES

~ PENGGAMBARAN DECISION TABEL~
Kondisi

1

2

3

4

5

Rekening Ada?

Y

N

Y


Y

Y

Rekening Aktif?

Y

N

Y

Y

Y

Besar belanja masih dalam
Limit?


Y

Y

N

Y

N

Lokasi Valid?

Y

Y

Y

N


N

Menyetujui

Y

N

N

N

N

Telepon Bank

N

Y


N

N

N

Telepon Pemegang Kartu

N

N

Y

Y

Y

Aksi


STATE TRANSITION TESTING
~ DEFINISI ~


Testing yang menggunakan model sistem
(digambarkan dalam bentuk state transition
diagram) yang terdiri dari:
› Status yang terdapat didalam program
› Transisi antar status-status tersebut
› Kejadian yang merupakan sebab dari transisi-

transisi tersebut.
› Aksi-aksi yang akan dihasilkan.


Test case didisain untuk memeriksa validitas
transisi antar status yang mungkin muncul.

STATE TRANSITION TESTING
~ CONTOH PENGGUNAAN ~



Sebuah state transition diagram dari
sebuah aplikasi media player:

STATE TRANSITION TESTING
~ CONTOH PENGGUNAAN
(con’t) ~



State transition diagram diatas terdiri
dari:
› Status, seperti displaying time (S1)
› Transisi, seperti antara S1 dan S3
› Kejadian yang menyebabkan transisi,

seperti “fast forward” akan menyebabkan
transisi dari S1 ke S3
› Aksi yang merupakan hasil dari transisi,

seperti “FAST FORWARD” yang akan terjadi
akibat dari kejadian “fast forward”.

STATE TRANSITION TESTING
~ TEST CASE YANG
DIHASILKAN ~



Dalam tiap test case terdapat:





Status awal
Masukan (input)
Keluaran yang diharapkan (output)
Status akhir


STATE TRANSITION TESTING
~ TEST CASE YANG DIHASILKAN
(cont’d)~

Berdasarkan contoh diatas, terdapat 8
test case (untuk transisi yang valid):



Test Case

1

2

3

4

5


6

7

8

Status
Awal

S1

S2

S3

S4

S1

S2

S3

S4

Input

Play

Play

Stop

Stop

Fast
Forward

Stop

Fast
Forward

Fast
Forward

Output

S3

S3

S1

S3

S2

S1

S4

S2

Status
Akhir

S3

S3

S1

S3

S2

S1

S4

S2

Keterangan: S1 = Off, S2 = Fast Forward, S3 = Play, S4
= Fast Play

FUNCTIONAL ANALYSIS
~ DEFINISI ~



Teknik yang paling banyak dipakai
untuk identifikasi test case.
Melakukan analisa terhadap fungsi
yang terdapat dalam sistem.

FUNCTIONAL ANALYSIS
~ DEFINISI (con’t) ~


Melakukan analisa untuk menjawab
pertanyaan berikut:
› Fungsi utama apa saja yang harus ada

pada sistem?
› Berdasarkan fungsi, keluaran apa yang
harus dihasilkan untuk membuktikan
fungsi terpenuhi?
› Masukan dan inisalisasi yang dibutuhkan
sistem untuk menghasilkan keluaran pada
tiap fungsi yang bersangkutan?

FUNCTIONAL ANALYSIS
~ TAHAPAN PENGGUNAAN~
1.
2.
3.

4.

Mendekomposisi (membagi) sistem berdasarkan fungsinya
Membuat hirarki dalam fungsi tersebut
Mendefinisikan fungsi
a. Apa yang harus dilakukan oleh fungsi
b. Bagaimana kerja fungsi tersebut seharusnya,
(berbentuk deskripsi, tampilan layar, DFD, daftar input &
output)
Mendesain test case, berfokus pada:
a. Kriteria fungsi
b. Keluaran fungsi (output)
c. Masukan fungsi (input)
d. Kondisi internal fungsi
e. Status internal fungsi

FUNCTIONAL ANALYSIS
~ CONTOH PENGGUNAAN ~


Sebagai contoh suatu aplikasi
mempunyai fungsi utama sebagai
berikut:






Finansial, akuntansi dan anggaran
Manajemen Inventori
Pembelian
Jasa
Manajemen data

FUNCTIONAL ANALYSIS
~ CONTOH PENGGUNAAN (langkah 1) ~


Membagi sistem ke grup fungsi:







Fungsi
Fungsi
Fungsi
Fungsi
Fungsi
Fungsi

operator
administrasi sistem
instalasi
keamanan
recovery / backup
antar muka

FUNCTIONAL ANALYSIS
~ CONTOH PENGGUNAAN (langkah 2) ~


Membuat hirarki, bisa dimulai dari
menu sistem:

FUNCTIONAL ANALYSIS
~ CONTOH PENGGUNAAN (langkah 3a) ~


Mendefinisikan fungsi:

FUNCTIONAL ANALYSIS
~ CONTOH PENGGUNAAN (langkah 3b) ~


Tampilan Layar & DFD

FUNCTIONAL ANALYSIS
~ CONTOH PENGGUNAAN
(langkah 3b – con’t) ~


Masukan & Keluaran (Input & Output)
dari layar:

FUNCTIONAL ANALYSIS
~ CONTOH PENGGUNAAN (langkah 4) ~


Mendesain test case:

FUNCTIONAL ANALYSIS
~ CONTOH PENGGUNAAN (langkah 4)
(con’t) ~

USE CASES
~ DEFINISI ~




Use case adalah suatu urutan (sekuensial)
aksi yang dilakukan oleh sistem, yang akan
secara bersama-sama memproduksi hasil
yang dibutuhkan pengguna sistem.
Tiap use case memiliki:
› Prekondisi: hal-hal yang harus ada terlebih dulu

agar use case dapaat bekerja dengan sukses
› Postkondisi: mendefinisikan kondisi dan hasil
setelah use case selesai.
› Flow of Event: mendefinisikan aksi user dan
respon sistem terhadap aksi tersebut.

USE CASES & TEST CASE
~ DEFINISI ~


Use case dan test case akan bekerja
dengan baik dalam dua cara, yaitu:
› Jika use case dari sistem komplit, akurat

dan jelas, maka pembuatan test case
dapat dilakukan secara langsung.
› Jika use case tidak dalam kondisi baik,
maka pembuatan test case akan
membantu dalam melakukan debug
terhadap test case.

USE CASES & TEST CASE
~ TAHAPAN PENGGUNAAN
~





Pembuatan test case dari use case
relatif langsung, dengan memilih jalur
yang ada pada use case.
Tahapan desain test case yang
bersumber dari use case:
1. Identifikasi jalur (di dalam use case) yang

akan ditest.
2. Satu jalur dapat menghasilkan banyak
test case yang berlainan.

USE CASES & TEST CASE
~ CONTOH PENGGUNAAN ~


Contoh Use case:

USE CASES & TEST CASE
~ CONTOH PENGGUNAAN
(con’t) ~


Contoh Use case:



USE CASES & TEST CASE
~ TEST CASE YANG
DIHASILKAN ~

Test case yang dihasilkan:

USE CASES & TEST CASE
~ TEST CASE YANG DIHASILKAN (con’t) ~




Test case negatif: Test case yang digunakan
untuk menangani data yang tidak valid atau
untuk skenario dimana kondisi awal tidak
terpenuhi.
Contoh Test case negatif: