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:
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: