Control Flow Testing Software Quality Eko Prasetyo Teknik Informatika

Slides:



Advertisements
Presentasi serupa
Teori Graf.
Advertisements

Pengendalian Proses : Seleksi (Conditional)
Bab 2 Struktur Dasar.
Metode Pengujian Perangkat Lunak (White Box)
TEKNIK PENGUJIAN PERANGKAT LUNAK
4/5/2017 PL/SQL SITI MUKAROMAH,S.Kom.
Unit Testing Software Quality Eko Prasetyo Teknik Informatika
Minggu V Gerlan A. Manu, ST.,MKom - Algoritma Pemrograman I 1.
Soal-2. Susun program untuk menginput empat (4) buah bilangan bulat kemudian mencetak salah satu bilangan yang nilainya terbesar: 180.
Pengenalan Algoritma Ardian Maretta Prastiawan, Ssi
Konsep Pemrograman Oleh Tita Karlita
PL/SQL - LANJUTAN PERULANGAN KONDISI.
MATERI 8 CHOICE / PILIHAN.
WEEK 6 Teknik Elektro – UIN SGD Bandung PERULANGAN - LOOPING.
PERTEMUAN 6 Algoritma Presented by : Sity Aisyah, M.Kom
Induksi Matematika.
Dr.Eng. Retno Supriyanti, ST,MT
Struktur Perulangan Week 4 & 5.
PERULANGAN Komang Kurniawan W., M.Cs.
sebuah fungsi yang memanggil dirinya sendiri
FUNGSI MATEMATIKA DISKRIT K- 6 Universitas Indonesia
Tim Matematika Diskrit
Teknik Pengujian Perangkat Lunak
Struktur Kendali Proses (Seleksi)
PEMROGRAMAN TERSTRUKTUR
STRUKTUR DASAR ALGORITMA KOMPETENSI DASAR Mahasiswa mengerti dan memahami berbagai struktur dalam penyajian algoritma Indikator 1.Mahasiswa dapat menjelaskan.
FUNGSI STRUKTUR DISKRIT K-8 Program Studi Teknik Komputer
Graf.
Pemrogramman Terstruktur
TESTING PROGRAM Materi Pertemuan ke-5 & 6.
PERANCANGAN KASUS UJI.
KEJADIAN dan PELUANG SUATU KEJADIAN
Analisa & Perancangan Sistem Informasi
2 JAM TEORI dan 1 jam praktek
Dasar-dasar Pengujian Perangkat Lunak
Pemprograman Terstruktur 1
Percabangan dan Perulangan
Kuliah 22 Optimisasi Kode.
Control-flow Testing MATA KULIAH : testing DAN implementasi sistem Dosen pengampu : catur iswahyudi s.Kom.,se.m.cS.
Pengujian Jalur Pengujian Jalur Dasar (Basis Path Testing)
Kuliah IV Ricky Maulana Fajri, M.Sc
TESTING PROGRAM.
Pengujian Perangkat Lunak
Metode Pengujian Perangkat Lunak (White Box)
penyusunan algoritma (flowchart)
Flowchart.
Dasar – dasar Algoritma dan Pemrograman
Menuliskan Algoritma Algoritma dapat dituliskan dengan berbagai cara:
Introduction 03 using to Algorithm C / C++ teknik dasar Algoritma.
TESTING DAN IMPLEMENTASI SISTEM (Pertemuan Ke-11)
Struktur Algoritma Sequence Process: instruksi dikerjakan secara sekuensial, berurutan. Selection Process: instruksi dikerjakan jika memenuhi kriteria.
Pseudo-code.
Dasar-dasar Pengujian Perangkat Lunak
Algoritma Percabangan
Kuliah IV Ricky Maulana Fajri, M.Sc
Pengendalian Proses : Perulangan /Looping
I Gusti Agung Made Wirautama, S.Kom
Seleksi Kondisi merupakan perintah yang memungkinkan pemilihan atas perintah yang akan dijalankan sesuai dengan kondisi tertentu. Operator yang digunakan.
Pengulangan.
DIAGRAM ALUR (FLOWCHART)
M-File Sebagai Fungsi.
STATEMEN GO TO DAN IF-THEN Pertemuan IX.
Dasar-dasar Pengujian Perangkat Lunak
FLOWCHARTING Temu 3 dan 4.
Dasar-dasar Pengujian Perangkat Lunak
Pengujian Perangkat Lunak
Pengujian Perangkat Lunak
Dasar-dasar Pengujian Perangkat Lunak
Dasar-dasar Pengujian Perangkat Lunak
Metode Pengujian Perangkat Lunak (White Box)
Transcript presentasi:

Control Flow Testing Software Quality Eko Prasetyo Teknik Informatika Univ. Pembangunan Nasional Veteran Jawa Timur 2011

Basic Idea Dua jenis statemen dasar dalam unit program adalah assignment statements dan conditional statements. Statemen assignment secara eksplisit direpresentasikan menggunakan simbol assignment “=“, seperti : x = 2*y, dimana x dan y are variables. Condition adalah inti dalam statement kondisi, seperti: if(), for() loop, while() loop, and goto. Misal, dalam if(x! = y), kita menguji ketidaksamaan x dan y. Pemanggilan fungsi adalah mekanisme untuk memberikan abstraksi desain program. Karena fungsi menerima input dan memberikan output, maka sebuah fungsi sebenarnya menjalankan serangkaian statemen dari titik masukan sampai ke titik keluaran. Eksekusi serangkaian instruksi dari titik masuk ke titik keluar disebut dengan lintasan (path).

Lintasan (path) unit program Sebuah unit program bisa mempunyai sejumlah path, banyak, bahkan tak terhingga jumlahnya. Sebuah path dikarakteristikkan dengan sebuah input dan sebuah output yang diharapkan. Sebuah masukan bisa memberikan keluaran yang berbeda karena lintasan yang dilalui juga berbeda. Semakin banyak kemungkinan pengujian, akan memberikan kualitas unit yang lebih baik. Control flow testing, dilakukan oleh programmer.

Outline Control Flow Testing

Simbol Control Flow Graph (CFG)

Contoh CFG Unit program untuk menentukan bilangan terbesar dari 3 bilangan. Koding: A, B, C 1 A, B, C if A>B if A>C max = A else max = B end if B>C max = C 2 T F A > B 3 4 A > C B > C T F T F 5 6 7 8 max = A max = C max = B max = C

Jalur yang mungkin terjadi A, B, C 1 Jalur yang mungkin terjadi 2 Path Rantai Jalur 1 1-2(T)-3(T)-5 2 1-2(T)-3(F)-6 3 1-2(F)-4(T)-7 4 1-2(F)-4(F)-8 T F A > B 3 4 A > C B > C T F T F 5 6 7 8 max = A max = C max = B max = C Input Domain dan Jalur yang mungkin terjadi Input Domain Jalur A B C Terbesar pertama Terbesar kedua Terbesar ketiga 1-2(T)-3(T)-5 1-2(F)-4(T)-7 1-2(T)-3(F)-6 1-2(F)-4(F)-8

Pengujian KASUS UJI INTERPRETASI MASUKAN JALUR KELUARAN DIHARAPKAN A B C 1 10 8 5 1-2(T)-3(T)-5 max = 10 2 3 1-2(F)-4(T)-7 4 1-2(T)-3(F)-6 6 1-2(F)-4(F)-8 7 12 max = 12 9 15 max = 15 max = 3

Latihan Jika A adalah bilangan genap maka kalikan A dengan 2, kemudian hitung jumlah dari kelipatan 5 untuk 2*A Jika A adalah bilangan ganjil maka kalikan A dengan 2 kemudian ditambah 1, kemudian hitung jumlah dari kelipatan 10 untuk 2*A+1 Misal: A= 2, B=2*A=4, H=1 A= 4, B = 2*A = 8, H = 2 A = 10, B = 2*A=20, H=4 A = 3, B = 2*A+1=7, H=1 A= 7, B = 2*A+1 = 15, H=2 A = 11, B = 2*A+1 = 23, H=3

Latihan 1 A = ? sisa = A mod 2 H = 0; if sisa == 0 B = 2*A while B > 5 H = H+1 B = B - 5; end while else B = 2*A+1 while B > 10 B = B - 10; End if 2 F T sisa == 0 4 3 B = 2*A B = 2*A+1 5 6 B > 5 B > 10 F F T T 7 9 H = H + 1 B = B - 5 H = H + 1 B = B - 10 10 H = H + 1

1 2 F T 4 3 5 6 F F Pengujian T T 7 9 10 B > 5 B > 10 A = ? sisa = A mod 2 H = 0 Input domain dan Jalur yang mungkin terjadi 1 Input Domain Jalur A Genap 1-2(T)-3-5(T)-7-5(F)-10 A  Genap 1-2(T)-3-5(F)-10 A  Ganjil 1-2(F)-4-6(T)-9-6(F)-10 1-2(F)-4-6(F)-10 2 F T sisa == 0 4 3 B = 2*A B = 2*A+1 5 6 B > 5 B > 10 F F Pengujian T T 7 9 KASUS UJI JALUR KELUARAN DIHARAPKAN A = 2 1-2(T)-3-5(F)-10 H = 1 A = 4 A = 10 A = 3 A = 7 A = 11 H = H + 1 B = B - 5 H = H + 1 B = B - 10 10 H = H + 1

1 2 F T 4 3 5 6 F F Pengujian T T 7 9 10 B > 5 B > 10 A = ? sisa = A mod 2 H = 0 Input domain dan Jalur yang mungkin terjadi 1 Input Domain Jalur A Genap 1-2(T)-3-5(T)-7-5(F)-10 A  Genap 1-2(T)-3-5(F)-10 A  Ganjil 1-2(F)-4-6(T)-9-6(F)-10 1-2(F)-4-6(F)-10 2 F T sisa == 0 4 3 B = 2*A B = 2*A+1 5 6 B > 5 B > 10 F F Pengujian T T 7 9 KASUS UJI JALUR KELUARAN DIHARAPKAN A = 2 1-2(T)-3-5(F)-10 H = 1 A = 4 1-2(T)-3-5(T)-7-5(F)-10 H = 2 A = 10 1-2(T)-3-5(T)-7-5(T)-7-5(T)-7-5(F)-10 H = 4 A = 3 1-2(F)-4-6(F)-10 A = 7 1-2(F)-4-6(T)-9-6(F)-10 A = 11 1-2(F)-4-6(T)-9-6(T)-9-6(F)-10 H = 3 H = H + 1 B = B - 5 H = H + 1 B = B - 10 10 H = H + 1