Teknik Informatika S1

dokumen-dokumen yang mirip
Teknik Informatika S1

Materi. Definisi Test Case White Box Testing Blackbox Testing Teknik Testing yang Lain Penggunaan Metode Tes

3/17/16 Testing dan Audit Perangkat Lunak - Universitas Mercu Buana Yogyakarta

Testing dan Implementasi Sistem

Nama : Rendi Setiawan Nim :

Dibuat Oleh : 1. Andrey ( )

PENGUJIAN PERANGKAT LUNAK

Teknik Informatika S1

Tugas Rekayasa Perangkat Lunak

Dasar-Dasar Pengujian Perangkat Lunak. Fakultas Ilmu Komputer dan Teknologi Informasi Jurusan Sistem Informasi Univesitas Gunadarma

Hubungan antara rencana pengujian dan proses pengembangan system. Tim RPL 1 3

Teknik Pengujian (2) Whitebox Testing

TESTING PROGRAM. Pertemuan Nurul Adhayanti

TUGAS MAKALAH. Testing dan Implementasi Sistem White Box Testing

Testing is the exposure of a system to trial input to see wheter it produces corect output Adalah proses eksekusi suatu program dengan maksud

Teknik Informatika S1

TEKNIK PENGUJIAN PERANGKAT LUNAK PERTEMUAN 14

DASAR-DASAR PENGUJIAN PERANGKAT LUNAK

White Box Testing Merupakan metode perancangan test case yang menggunakan struktur kontrol dari perancangan prosedural untuk mendapatkan test case.

TEKNIK PENGUJIAN PERANGKAT LUNAK PERTEMUAN 14

TEKNIK PENGUJIAN PERANGKAT LUNAK (Software Testing Techniques)

Software Testing Technique

White Box Testing dan Black Box Testing, Perbedaannya Serta Contohnya.

Rekayasa Perangkat Lunak

Gambar (a) PDL for test design

TESTING DAN IMPLEMENTASI SISTEM APLIKASI DATA MATA KULIAH

TESTING DAN IMPLEMENTASI SISTEM. WAHYU PRATAMA, S.Kom., MMSI.

Dasar-dasar Pengujian Perangkat Lunak. Minggu ke 5

TESTING & IMPLEMENTASI SISTEM 4KA. Teknik Pengujian Perangkat Lunak. helen.staff.gunadarma.ac.id

BAB 6 METODE PENGUJIAN

Tujuan (Objektives) Testing adalah proses eksekusi program yang bertujuan untuk menemukan error Sebuah test yang baik adalah yang mempunyai kemungkina

Testing dan Implementasi Sistem Lukman Hakim dan Suwanto R

PENGUJIAN PERANGKAT LUNAK (SOFTWARE TESTING)

Teknik Unit Testing. Pressman, Roger S/W Engineering edisi 5/7 chapter 17

SISTEM INFORMASI HARGA POKOK PRODUKSI KAYU LAPIS PADA PT. KTC

Pengujian Software. Teknik Pengujian Software. Apa yang Ditunjukan Pengujian. Tujuan Pengujian. Prinsip Pengujian. Testability : Kemudahan Diuji

Rekayasa Perangkat Lunak

TEKNIK PENGUJIAN PERANGKAT LUNAK. Ign.F.Bayu Andoro.S, M.Kom

1. Dr. I Ketut Eddy Purnama, ST.,MT. 2. Ahmad Zaini, ST.,M.Sc. Asti Nurhayati

BAB 1 PENDAHULUAN 1.1 Latar Belakang Masalah 1.2 Perumusan Masalah

DESAIN TEST CASE. Tugas ke 11 Rekayasa Perangkat Lunak

A. Pengujian Perangkat Lunak

BAB I PENDAHULUAN 1.1. Latar belakang

Teknik Informatika S1

14. PENGUJIAN PERANGKAT LUNAK Dasar-dasar Pengujian 14.2 Teknik Pengujian 14.3 Strategi Pengujian dan V&V

Silabus dan Satuan Acara Perkuliahan

Teknik Informatika S1

MAKALAH DESAIN TEST CASE. NAMA : RANI JUITA NIM : DOSEN : WACHYU HARI HAJI. S.Kom.MM

: :

SATUAN ACARA PERKULIAHAN(SAP)

BAB IV IMPLEMENTASI DAN PENGUJIAN. diperlukan sarana penunjang dalam bentuk Hardware dan software, sebagai

2. BAB II LANDASAN TEORI. lanjut sehingga terbentuk suatu aplikasi yang sesuai dengan tujuan awal.

Teknik Informatika S1

CONTOH PENGUJIAN BLACK BOX DAN WHITE BOX

Sistem (3 sks) Black Box Testing (1) Black Box Testing

SOFTWARE TESTING. Ratna Wardani

BAB II LANDASAN TEORI. sehingga komputer dapat memproses input menjadi output.

Teknik Informatika S1

BAB III METODE PENELITIAN. testing dalam suatu siklus hidup pengebangan software. White box testing adalah

STRATEGI, TEKNIK, FAKTOR PENDUKUNG DAN PENGHAMBAT PENGUJIAN UNTUK PENGEMBANG PERANGKAT LUNAK PEMULA

RENCANA PROGRAM KEGIATAN PERKULIAHAN SEMESTER (RPKPS)

GARIS-GARIS BESAR PROGRAM PENGAJARAN (GBPP)

GARIS-GARIS BESAR PROGRAM PENGAJARAN (GBPP)

Rekayasa Perangkat Lunak Pengujian Perangkat Lunak. Teknik Informatika UNIKOM

BAB 4 IMPLEMENTASI DAN PENGUJIAN SISTEM

Testing dan Implementasi

GARIS-GARIS BESAR PROGRAM PENGAJARAN PROGRAM STUDI: S1 SISTEM INFORMASI Semester : 7

SATUAN ACARA PERKULIAHAN PROGRAM STUDI : S1 SISTEM INFORMASI

SATUAN ACARA PERKULIAHAN (SAP)

BAB 4 IMPLEMENTASI DAN PENGUJIAN SISTEM

PENERAPAN METODA WHITE-BOX TESTING UNTUK MENGETAHUI KESESUAIAN KEBUTUHAN NON-FUNGSIONAL PRODUK PADA PERANGKAT A B S T R A K

Teknik Informatika S1

BAB IV IMPLEMENTASI DAN PENGUJIAN

PENDEKATAN WHITE BOX TESTING UNTUK MENENTUKAN KUALITAS PERANGKAT LUNAK DENGAN MENGGUNAKAN BAHASA PEMROGRAMAN C++ Sa diyah Noor Novita Alfisahrin

METODE PENGUJIAN PERANGKAT LUNAK

Teknik Informatika S1

Blackbox testing black box berfokus pada pengujian persyaratan fungsional perangkat lunak

Pengujian Perangkat Lunak

BAB IV IMPLEMENTASI DAN PENGUJIAN

4/18/14 Testing dan Audit Perangkat Lunak - Universitas Mercu Buana Yogyakarta

BAB II LANDASAN TEORI. harapan akan memperoleh laba dari adanya transaksi-transaksi tersebut dan. atas barang atau jasa dari pihak penjual ke pembeli.

PENDAHULUAN TINJAUAN PUSTAKA

TESTING SW SE6161 Perancangan dan Analisis Perangkat Lunak 1

Rancang Bangun Aplikasi Web Pencarian Rute Terpendek Antar Gedung di Kampus Menggunakan Algoritma Floyd-warshall

TEKNIK PENGUJIAN PERANGKAT LUNAK

IMPLEMENTASI DAN PENGUJIAN

SISTEM PENUNJANG KEPUTUSAN PENERIMAAN GURU BERBASIS WEB

LANDASAN TEORI. perusahaan yang usaha utamanya membeli obat untuk dijual kembali dengan

Teknik Informatika S1

LEMBAR PERNYATAAN PERSETUJUAN

PENGUJIAN PERANGKAT LUNAK. Oleh Cipta Wahyudi

PENGUJIAN PERANGKAT LUNAK DENGAN MENGGUNAKAN METODE WHITE BOX DAN BLACK BOX

REKAYASA PERANGKAT LUNAK. 3 sks Sri Rezeki Candra Nursari reezeki2011.wordpress.com

PENGUJIAN PERANGKAT LUNAK

APLIKASI KAMUS DIGITAL BAHASA INDONESIA - BAHASA ARAB DENGAN MENGGUNAKAN METODE PROTOTYPING

BAB 4 IMPLEMENTASI DAN PENGUJIAN SISTEM

BAB 3 ANALISIS DAN PERANCANGAN PROGRAM

Definisi Black Box. pemenuhan sistem atau komponen dengan kebutuhan fungsional tertentu. q Menurut Myers (1979) :

REKAYASA PERANGKAT LUNAK MATERI TM 13

Pengujian dan Implementasi Sistem Informasi

Transkripsi:

Teknik Informatika S1 SOFTWARE QUALITY AND TESTING White Box Disusun Oleh: Egia Rosi Subhiyakto, M.Kom, M.CS Teknik Informatika UDINUS egia@dsn.dinus.ac.id +6285740278021

White Box Testing Kadang disebut juga glass box testing atau clear box testing, adalah suatu metode desain test case yang menggunakan struktur kendali dari desain prosedural.

Mengapa White Box Testing? Mengapa melakukan white box testing bilamana black box testing berfungsi untuk testing pemenuhan terhadap kebutuhan/ spesifikasi? Kesalahan logika dan asumsi yang tidak benar kebanyakan dilakukan ketika coding untuk kasus tertentu. Dibutuhkan kepastian bahwa eksekusi jalur ini telah dites.

Mengapa White Box Testing? Asumsi bahwa adanya kemungkinan terhadap eksekusi jalur yang tidak benar. Dengan white box testing dapat ditemukan kesalahan ini. Kesalahan penulisan yang acak. Seperti berada pada jalur logika yang membingungkan pada jalur normal.

Cakupan Pernyataan, Cabang dan Jalur Cakupan pernyataan, cabang dan jalur adalah suatu teknik white box testing yang menggunakan alur logika dari program untuk membuat test cases. Alur logika adalah cara dimana suatu bagian dari program tertentu dieksekusi saat menjalankan program. Alur logika suatu program dapat direpresentasikan dengan flow graph.

Contoh Flow Graph

Flow Graph Suatu flow graph terbentuk dari: Nodes (titik) Mewakili pernyataan (atau sub program) yang akan ditinjau saat eksekusi program Edges (anak panah) Mewakili jalur alur logika program untuk menghubungkan satu pernyataan (atau sub program) dengan yang lainnya. Branch nodes (titik cabang), titik-titik yang mempunyai lebih dari satu anak panah keluaran.

Flow Graph Branch edges (anak panah cabang) Anak panah yang keluar dari suatu cabang. Paths (Jalur) Jalur yang mungkin untuk bergerak dari satu titik ke lainnya sejalan dengan keberadaan arah anak panah.

Cakupan Pernyataan Cakupan pernyataan ditentukan dengan menilai proporsi dari pernyataan-pernyataan yang ditinjau oleh sekumpulan test cases yang ditentukan. Cakupan pernyataan 100 % adalah bila tiap pernyataan pada program ditinjau setidaknya minimal sekali tes. Cakupan pernyataan berkaitan dengan tinjauan terhadap titik (node) pada flow graph. Cakupan 100 % terjadi bilamana semua titik dikunjungi oleh jalur-jalur yang dilalui oleh test cases.

Contoh Cakupan Pernyataan Pada contoh terdapat 10 titik. Misal suatu eksekusi jalur melewati titik-titik A, B, D, H, K. Berarti ada 5 titik dari 10 titik yang dikunjungi, maka cakupan pernyataan sebesar 50%.

Cakupan Cabang Cakupan cabang ditentukan dengan menilai proporsi dari cabang keputusan yang diuji oleh sekumpulan test cases yang telah ditentukan. Cakupan cabang 100% adalah bilamana tiap cabang keputusan pada program ditinjau setidaknya minimal sekali tes. Cakupan cabang berkaitan dengan peninjauan anak panah cabang (branch edges) dari flow graph.

Contoh Cakupan Cabang Pada contoh terdapat 6 anak panah cabang. Misal suatu jalur eksekusi program melewati titiktitik A, B, D, H, K. maka jalur tersebut meninjau 2 dari 6 anak panah cabang yang ada, jadi cakupannya sebesar 33%.

Cakupan Jalur Cakupan jalur ditentukan dengan menilai proporsi eksekusi jalur program yang diuji oleh sekumpulan test cases yang telah ditentukan. Cakupan jalur 100% adalah bilamana tiap jalur pada program dikunjungi setidaknya minimal sekali tes. Cakupan jalur berkaitan dengan peninjauan jalur sepanjang flow graph.

Contoh Cakupan Jalur Pada contoh terdapat 4 jalur. Bila suatu eksekusi jalur pada program melalui titik-titik A, B, D, H, K, maka eksekusi tersebut meninjau 1 dari 4 jalur yang ada, jadi cakupannya sebesar 25%.

Perbedaan antara cakupan pernyataan, cabang dan jalur Pencapaian cakupan pernyataan 100% dapat terjadi tanpa harus membuat cakupan cabang menjadi 100% juga. Contoh: Contoh cakupan cabang 100% namun cakupan jalur tidak 100%.

Perbedaan antara cakupan pernyataan, cabang dan jalur Dapat pula membuat cakupan cabang 100%, dengan meninjau seluruh anak panah cabang tanpa harus meninjau semua jalur yang ada (cakupan jalur 100%) Contoh: Contoh anak panah cabang 100% namun cakupan jalur tidak 100%.

Perbedaan antara cakupan pernyataan, cabang dan jalur Dapat dilihat bahwa hanya dibutuhkan 2 jalur untuk mengunjungi semua anak panah cabang, dari 4 jalur yang ada pada flow graph.

Perbedaan antara cakupan pernyataan, cabang dan jalur Jadi bila cakupan jalur sebesar 100%, maka secara otomatis cakupan cabang sebesar 100% pula. Demikian pula bila cakupan cabang sebesar 100%, maka secara otomatis cakupan pernyataan sebesar 100%.

Desain Cakupan Tes Untuk mendesain cakupan dari tes, perlu diketahui tahaptahap sebagai berikut: 1. Menganalisa source code untuk membuat flow graph. 2. Mengidentifikasi jalur tes untuk mencapai pemenuhan tes berdasarkan pada flow graph. 3. Mengevaluasi kondisi tes yang akan dicapai dalam tiap tes. 4. Memberikan nilai masukan dan keluaran berdasarkan pada kondisi.

Teknik Testing White Box Basis Path Testing Graph Matrix Control Structure Testing Data Flow Testing Loop Testing Lines of Code Halstead s Metrics

Pengujian Basis Path Teknik White Box Testing dikenalkan oleh Tom McCabe. Digunakan untuk mengukur kompleksitas logis dari desain procedural dan menggunakannya sebagai pedoman untuk menetapkan himpunan basis dari semua jalur eksekusi. Test case yang didapat digunakan untuk mengerjakan basis set yang menjamin pengerjaan setiap perintah min 1x selama uji coba.

Pengujian Basis Path Tujuannya meyakinkan bahwa himpunan test case akan menguji setiap path pada suatu program paling sedikit satu kali. Titik awal untuk path testing adalah suatu program flow graph yang menunjukkan node-node yang menyatakan program decisions (mis.: if-then-else condition) dan busur menyatakan alur kontrol

Pengujian Basis Path Tahapan: 1: Gambarkan control flow graph 2: Hitung Cyclomatic complexity 3: Pilih jalur basis set 4: Generate uji kasus untuk setiap jalur

Control Flow Graph Setiap desain prosedural dapat diterjemahkan ke dalam control flow graph: Lines (atau arrows) disebut edges merepresentasikan kontrol aliran Circles atau nodes merepresentasikan satu atau lebih aksi Daerah yang dibatasi oleh tepi dan node disebut regions Sebuah predicate node adalah node yang mengandung kondisi.

Struktur Control Flow Graph Basic Control Flow Graph Structures:

Contoh Kasus

Control Flow Graph Structure Step 1: Gambarkan Control Flow Graph

Control Flow Graph Structure Step 2: Hitung Cyclomatic Complexity Model: V(G) = edges nodes + 2p?

Control Flow Graph Structure Step 2: Hitung Cyclomatic Complexity Model: V(G) = edges nodes + 2p P= Jumlah bagian graph yang tidak tersambung

Control Flow Graph Structure Latihan: Hitung Cyclomatic Complexity untuk Graph di bawah menggunakan rumus V(G):

Control Flow Graph Structure Hitung Cyclomatic Complexity? Edges:? Nodes:? V(G) = edges nodes +2p

Control Flow Graph Structure Hitung Cyclomatic Complexity? Edges:? Nodes:? V(G) = edges nodes +2p

Control Flow Graph Structure Hitung Cyclomatic Complexity? Edges:? Nodes:? V(G) = edges nodes +2p

Control Flow Graph Structure Hitung Cyclomatic Complexity? V(G) = edges nodes +2p

Control Flow Graph Structure Step 3: Pilih jalur Basis Set

Control Flow Graph Structure Step 3: Pilih jalur Basis Set

Control Flow Graph Structure

Step 4: Generate Test Cases Path 1: 1, 2, 5 Test case 1 Path 1 can not be tested stand-alone & must be tested as part of path 2, 3 or 4 Path 2: 1, 2, 3, 4, 2, 5 Test case 2 Press cancel in response to the Enter PIN Number prompt

Control Flow Graph Structure Step 4: Generate Test Cases Path 3: 1, 2, 3, 6, 7, 4, 2, 5 Test case 3 Enter a valid PIN number on the first try Path 4: 1, 2, 3, 6, 8, 7, 4, 2, 5 Test case 4 Enter an invalid on the first try & a valid PIN on the second try

TERIMA KASIH